I.2.5. Les différentes architectures
I.2.5.1. L'architecture 2 -tiers
Dans une architecture 2-tiers, encore appelée
client-serveur de première génération ou client-serveur de
données, le poste client se contente de déléguer la
gestion des données à un service spécialisé. Le cas
typique de cette architecture est une application de gestion fonctionnant sous
Windows ou Linux et exploitant un SGBD centralisé.
Ce type d'application permet de tirer de la puissance des
ordinateurs déployés en réseau pour fournir à
l'utilisateur une interface riche, tout en garantissant la cohérence des
données, qui restent gérées de façon
centralisée.
La gestion des données est prise en charge par un SGBD
centralisé, s'exécutant le plus souvent sur un serveur
dédié. Ce dernier est interrogé en utilisent
un langage de requête qui, le plus souvent, est SQL.
Requête utilisateur
Présentation
Traitements
Client
Retour de la réponse
Envoi de la requête
Réseau
Serveur Moteur SGBD
Données
Fig. 2.L'architecture 2-tiers
Cet échange de messages transite à travers le
réseau reliant les deux machines. Il met en oeuvre des mécanismes
relativement complexes qui sont, en général, pris en charge par
un middleware.
L'expérience a démontré qu'il
était coüteux et contraignant de vouloir faire porter l'ensemble
des traitements applicatifs par le poste client. On en arrive aujourd'hui
à ce que l'on appelle le client lourd, avec un certain nombre
d'inconvénients :
> On ne peut pas soulager la charge du poste client. Qui
supporte la grande majorité des traitements applicatifs,
> Le poste client est fortement sollicité, il
devient de plus en plus complexe et doit être mis à jour
régulièrement pour répondre aux besoins des
utilisateurs,
> La relation étroite qui existe entre le programme
client et l'organisation de la partie serveur complique les évolutions
de cette dernière,
> Ce type d'architecture est grandement rigidifié par
les coüts et la complexité de sa maintenance.
Avantage de l'architecture 2-tiers
> Elle permet l'utilisation d'une interface utilisateur riche
;
> Elle a permis l'appropriation des applications par
l'utilisateur ; > Elle a introduit la d'interopérabilité.
Pour résoudre les limitations du client-serveur 2-tiers
tout en conservant ses avantages, on a cherché une architecture plus
évoluée, facilitant les forts déploiements à
moindre coût. La réponse est apportée par les architectures
distribuées.
I.2.5.2. L'architecture 3LIIIELJU
Les limites de l'architecture 2-tiers proviennent en grande
partie de la nature du client utilisé :
> Le frontal est complexe et non standard (même s'il
s'agit presque toujours d'un PC sous Windows).
> Le middleware entre client et serveur n'est pas standard
(dépend de la plate-forme, du SGBD,...)
La solution résiderait donc dans l'utilisation d'un
poste client simple communicant avec le serveur par le biais d'un protocole
standard. Dans ce but, l'architecture trois tiers applique les principes
suivants :
> Les données sont toujours gérées de
façon centralisée ;
> La présentation est toujours prise en charge par le
poste client ;
> La logique applicative est prise en charge par un serveur
intermédiaire.
Cette architecture trois tiers, également
appelée client-serveur de deuxième génération ou
client-serveur distribué sépare l'application en 3 niveaux de
services distincts, conformes au principe précédent :
> Premier niveau : l'affichage et les traitements locaux
(contrôles de saisie, mise enforme de donnée...) sont pris en
charge par le poste client ;
> Deuxième niveau : les traitements applicatifs globaux
sont pris en charge par le service applicatif ;
> Troisième niveau : les services de base de
données sont pris en charge par un SGBD.
Présentation
Traitements locaux
Traitements globaux
Données
Premier niveau Deuxième niveau Troisième niveau
Fig. 3.L'architecture 3-tiers
Tous ces niveaux étant indépendants, ils peuvent
être implantés sur des machines différentes, de ce fait
:
> Le poste client ne supporte plus l'ensemble des
traitements s'il est moins sollicité et peut être moins
évolué, donc moins coûteux ;
> Les ressources présentes sur le réseau sont
mieux exploitées, puisque les traitements applicatifs peuvent être
partagés ou regroupés(le serveur d'application peut
s'exécuter sur la même machine que le SGBD) ;
> La fiabilité et les performances de certains
traitements se trouvent améliorées par leur centralisation ;
> Il est relativement simple de faire face à une
forte montée en charge, en renforçant le service applicatifs.
Dans l'architecture 3- tiers, le poste client est
communément appelé client léger, par opposition au client
lourd des architecture deux tiers, il ne prend en charge que la
présentation de l'application avec, éventuellement, une partie de
logique applicative permettant une vérification immédiate de la
saisie et la mise en forme des donnée.
Le serveur de traitement constitue la pierre angulaire de
l'architecture et se trouve souvent fortement sollicité. Dans ce type
d'architecture, il est difficile de répartir la charge entre client et
serveur. On se retrouve confronté aux épineux problèmes de
dimensionnement serveur et de gestion de la montée en charge rappelant
l'époque des mainframes, de plus, les solutions mises en oeuvre sont
relativement complexes à maintenir et la gestion des sessions est
compliquée. Les contraintes semblent inversées par rapport
à celles rencontrées avec l'architecture deux tiers : le client
est soulagé, mais le serveur est fortement sollicité.
|