1.1.4. Différant modèles de client
serveur
En fait, les différences sont essentiellement
liées aux services qui sont assurées par le serveur. On distingue
couramment :
? Client-serveur de donnée :
dans ce cas, le serveur assure des tâches de gestion, de stockages
et de traitement de données. C'est le cas le plus connu de
client-serveur est qui est utilisé par tous les grands SGBD.
? Client-serveur de présentation :
dans ce cas la présentation des pages affichées par le client est
intégralement prise en charge par le serveur. Cette
organisation présente l'inconvénient de
générer un fort trafic réseau.
? Client-serveur de traitement : dans ce cas,
le serveur effectue des traitements à la demande du client. Il peut
s'agir de traitement particulier sur des données, de vérification
de formulaires de saisie, de traitements d'alarmes ...
Ces traitements peuvent être réalisés par
des programmes installé sur des serveurs mais également
intégrés dans des bases de données (triggers,
procédures stockées), dans ce cas la partie donnée et
traitement sont intégrés.
1.1.5. Différentes architectures
a) Architecture Client Serveur à deux niveaux
Dans l'architecture client-serveur à deux niveaux
(2 tiers), le poste de travail de l'utilisateur, appelé le
poste client, prend en charge tous les traitements liés
à la fois à la logique de présentation et à la
logique applicative. La logique d'accès est dévolue à un
serveur qui agit comme serveur de données exclusivement Le poste client
compose des requêtes, dans le langage SQL par exemple, selon les besoins
en données de l'application qui s'exécute sur le poste. Il
transmet ensuite la requête à travers le réseau au serveur
qui l'exécute à son tour et retourne en réponse au poste
client Le résultat de son exécution
L'expérience a démontré qu'il
était couteux 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. L'architecture 2-tiers dispose d'un grand
inconvénient, vu qu'il est au coeur du réseau, si celui-ci tombe
tout tombe.
12
Malgré tout, l'architecture deux tiers présente
de nombreux avantages qui lui permettent d'un bilan globalement positifs :
? Elle permet l'utilisation d'une interface utilisateur riche,
? Elle a permis l'approbation des applications par l'utilisateur,
? Elle a permis la notion d'interopérabilité.
Figure 1.2. Architectures 2 tiers
b) Architecture Trois Niveaux
De manière à simplifier l'entretien et la mise
à jour de la logique applicative, lin autre modèle client-serveur
a été mis au point permettant de délester le poste client
de ce composant. Il s'agit de l'architecture client-serveur à trois
niveaux (three-tier). Dans ce modèle la logique
applicative est prise en charge par un deuxième serveur, ne laissant au
poste client que les tâches liées à la gestion de
l'interface utilisateur .C'est ainsi qu'est né le concept de client
léger, léger dans le sens que le poste client ne
nécessite plus de ressources aussi importantes en matière
d'espace de mémoire principale et de vitesse d'exécution que
demandait le modèle à deux niveaux .Dans certaines applications
client-serveur à trois niveaux, la gestion de l'interface utilisateur se
fait avec un simple navigateur Web avec pour conséquence une
administration considérablement simplifiée des mises à
jour des applications côté client ; L'entretien de la logique
applicative ne concerne désormais qu'une seule machine que l'on appelle
le serveur d'application. La facilité d'administration des
13
mises à jour n'est pas le seul avantage d'un
modèle à trois niveaux. Il est en revanche d'une grande
souplesse. Il permet par exemple d'assurer aux utilisateurs un service sans
interruption en cas de panne. En mettant en oeuvre ce modèle avec
plusieurs serveurs d'application, offrant tous la même logique
applicative, la panne d'un serveur a peu d'impact sur les utilisateurs car les
autres serveurs pourront prendre la relève en tout temps même si
la performance globale s'en trouvera légèrement
dégradée, mais cette architecture possède un grand
inconvénient coût.
Figure 1.3. Architecture 3 tiers
c) L'architecture N-Tiers
L'architecture n-tiers a été pensée pour
pallier aux limitations des architectures trois tiers et concevoir des
applications puissantes et simples à maintenir. Ce type d'architecture
permet de distribuer plus librement la logique applicative, ce qui facilite la
répartition de la charge entre tous les niveaux.
Cette évolution des architectures trois tiers met en
oeuvre une approche objet pour offrir une plus grande souplesse
d'implémentation et faciliter la réutilisation des
14
développements. Théoriquement, ce type
d'architecture supprime tous les inconvénients des architectures
précédentes :
· Elle permet l'utilisation d'interfaces utilisateurs
riches
· Elle sépare nettement tous les niveaux de
l'application
· Elle offre de grandes capacités d'extension,
· Elle facilite la gestion des sessions.
L'appellation « n-tiers » pourrait faire penser que
cette architecture met en oeuvre un nombre indéterminé de niveaux
de service, alors que ces derniers sont au maximum trois (les trois niveaux
d'une application informatique). En fait, l'architecture n-tiers qualifie la
distribution d'application entre de multiples services et non la multiplication
des niveaux de service.
|