Réalisé par :
Warteni Ameni
Les architectures client-serveur
Plan
 Introduction
 Exemple
 Peer to peer
 Architecture 2 tier
 Architecture 3 tier
 Comparatif
 Architecture N tier
 Les types des clients
Introduction
 L'environnement client/serveur désigne un mode
de communication organisé par l'intermédiaire
d'un réseau et d'un interface Web entre plusieurs
ordinateurs.
 Les machines clientes contactent un serveur qui
leur fournit des services. Ces derniers sont
exploités par des programmes, appelés
programmes clients, s'exécutant sur les machines
clientes.
 Le modèle client/serveur peut être utilisé par des
programmes d'un même ordinateur, mais le
concept est surtout utile dans le cadre
d'un réseau. Dans ce cas, le client établit une
connexion au serveur sur un réseau local (LAN)
ou étendu (WAN), tel qu'Internet. Lorsque le
serveur a répondu à la demande du client, la
connexion est terminée. Un navigateur Internet
est un programme client qui demande un service
à un serveur. Le service et la ressource fournis
par le serveur donnent lieu à l'affichage d'une
page Web.
Exemple
 Par exemple, lorsque vous consultez votre
compte bancaire à partir de votre ordinateur, un
programme client de votre ordinateur transmet
une requête à un programme serveur de votre
banque. Ce programme peut à son tour
transmettre une requête à son propre programme
client, qui envoie alors une requête à un serveur
de base de données sur un autre ordinateur de la
banque. Lorsque le solde de votre compte a été
extrait de la base de données, il est renvoyé au
client de données de la banque, qui à son tour le
renvoie au client de votre PC, qui affiche ces
informations.
 Avantages de cette architecture :
 Unicité de l'information : Pour un site web dynamique par
exemple certains articles du site sont stockés dans une base
de données sur le serveur. De cette manière, les informations
restent identiques. Chaque utilisateur accède aux mêmes
informations.
 Meilleure sécurité : Lors de la connexion un PC client ne voit
que le serveur, et non les autres PC clients. De même, les
serveurs sont en général très sécurisés contre les attaques de
pirates.
 Meilleure fiabilité : En cas de panne, seul le serveur fait
l'objet d'une réparation, et non le PC client.
 Facilité d'évolution : Une architecture client/serveur est
évolutive car il est très facile de rajouter ou d'enlever des
clients, et même des serveurs.
 Inconvénients de cette architecture :
Peer 2 peer
 Il existe d'autres modèles de relations entre
programmes, comme la relation maître/esclave et
la relation de gré-à-gré (ou Peer-to-peer, P2P).
Dans le modèle P2P, chaque nœud du réseau
peut fonctionner comme serveur et comme client.
Dans le modèle maître/esclave, un périphérique
ou un processus (appelé maître) contrôle un ou
plusieurs autres périphériques ou processus
(appelés esclaves). Lorsque la relation
maître/esclave est établie, le contrôle est toujours
unilatéral, du maître à l'esclave.
Architecture à 2 niveaux (2 tiers)
 L'architecture à deux niveaux caractérise les
systèmes clients/serveurs pour lesquels le client
demande une ressource et le serveur la lui fournit
directement, en utilisant ses propres ressources.
Cela signifie que le serveur ne fait pas appel à
une autre application afin de fournir une partie du
service.
Architecture à 3 niveaux (3-tier)
 Dans l'architecture à 3 niveaux, il existe un
niveau intermédiaire, c'est-à-dire que l'on a
généralement une architecture partagée entre :
 Un client, c'est-à-dire l'ordinateur demandeur de
ressources, équipée d'une interface utilisateur
(généralement un navigateur web) chargée de la
présentation ;
 Le serveur d'application middleware, chargé de
fournir la ressource mais faisant appel à un autre
serveur
 Le serveur de données, fournissant au serveur
d'application les données dont il a besoin.
Cette architecture permet de spécialiser les
serveurs dans une tache précise : Avantage de
flexibilité, de sécurité et de performance .
Potentiellement, l'architecture peut être étendue
sur un nombre de niveaux plus important : On
parle dans ce cas d'architecture à N niveaux
(ou multi-tier .Voici schématisez cet architecture
sur l'image ci-dessous.
Comparatif des deux
d'architecture
 L'architecture à deux niveaux est donc une
architecture client/serveur dans laquelle le serveur est
polyvalent, c'est-à-dire qu'il est capable de fournir
directement l'ensemble des ressources demandées
par le client.
 Dans l'architecture à trois niveaux par contre, les
applications au niveau serveur sont délocalisées,
c'est-à-dire que chaque serveur est spécialisé dans
une tâche (serveur web/serveur de base de
données). L'architecture à trois niveaux permet :
 Une plus grande flexibilité/souplesse ;
 Une sécurité accrue car la sécurité peut être définie
indépendamment pour chaque service, et à chaque
niveau ;
 De meilleures performances, étant donné le partage
L'architecture multiniveaux
 Dans l'architecture à 3 niveaux, chaque serveur
effectue une tâche (un service) spécialisée. Un
serveur peut donc utiliser les services d'un ou
plusieurs autres serveurs afin de fournir son
propre service. Par conséquent, l'architecture à
trois niveaux est potentiellement une architecture
à N niveaux...
Les types de Clients
 Client "léger" Le poste client accède à une application
située sur un ordinateur dit "serveur" via un interface et un
navigateur Web. L'application fonctionne entièrement sur
le serveur, le poste client reçoit la réponse "toute faite" à
sa demande qu'il a formulée. (appelée : "requête" ) .
 Client "lourd" Le poste client doit comporter un système
d'exploitation capable d'exécuter en local une partie des
traitements. Car le traitement de la réponse à la requête
du client utilisateur va mettre en œuvre un travail combiné
entre l'ordinateur serveur et le poste client .
 Client "riche" Un interface graphique plus évolué permet
de mettre en œuvre des fonctionnalités comparables à
celles d'un client "lourd". Les traitements sont effectués
majoritairement sur le serveur , la réponse "semi-finie"
étant envoyée au poste client , où le client "riche" est
capable de la finaliser et de la présenter.

Les architectures client serveur

  • 1.
    Réalisé par : WarteniAmeni Les architectures client-serveur
  • 2.
    Plan  Introduction  Exemple Peer to peer  Architecture 2 tier  Architecture 3 tier  Comparatif  Architecture N tier  Les types des clients
  • 3.
    Introduction  L'environnement client/serveurdésigne un mode de communication organisé par l'intermédiaire d'un réseau et d'un interface Web entre plusieurs ordinateurs.  Les machines clientes contactent un serveur qui leur fournit des services. Ces derniers sont exploités par des programmes, appelés programmes clients, s'exécutant sur les machines clientes.
  • 4.
     Le modèleclient/serveur peut être utilisé par des programmes d'un même ordinateur, mais le concept est surtout utile dans le cadre d'un réseau. Dans ce cas, le client établit une connexion au serveur sur un réseau local (LAN) ou étendu (WAN), tel qu'Internet. Lorsque le serveur a répondu à la demande du client, la connexion est terminée. Un navigateur Internet est un programme client qui demande un service à un serveur. Le service et la ressource fournis par le serveur donnent lieu à l'affichage d'une page Web.
  • 5.
    Exemple  Par exemple,lorsque vous consultez votre compte bancaire à partir de votre ordinateur, un programme client de votre ordinateur transmet une requête à un programme serveur de votre banque. Ce programme peut à son tour transmettre une requête à son propre programme client, qui envoie alors une requête à un serveur de base de données sur un autre ordinateur de la banque. Lorsque le solde de votre compte a été extrait de la base de données, il est renvoyé au client de données de la banque, qui à son tour le renvoie au client de votre PC, qui affiche ces informations.
  • 6.
     Avantages decette architecture :  Unicité de l'information : Pour un site web dynamique par exemple certains articles du site sont stockés dans une base de données sur le serveur. De cette manière, les informations restent identiques. Chaque utilisateur accède aux mêmes informations.  Meilleure sécurité : Lors de la connexion un PC client ne voit que le serveur, et non les autres PC clients. De même, les serveurs sont en général très sécurisés contre les attaques de pirates.  Meilleure fiabilité : En cas de panne, seul le serveur fait l'objet d'une réparation, et non le PC client.  Facilité d'évolution : Une architecture client/serveur est évolutive car il est très facile de rajouter ou d'enlever des clients, et même des serveurs.  Inconvénients de cette architecture :
  • 7.
    Peer 2 peer Il existe d'autres modèles de relations entre programmes, comme la relation maître/esclave et la relation de gré-à-gré (ou Peer-to-peer, P2P). Dans le modèle P2P, chaque nœud du réseau peut fonctionner comme serveur et comme client. Dans le modèle maître/esclave, un périphérique ou un processus (appelé maître) contrôle un ou plusieurs autres périphériques ou processus (appelés esclaves). Lorsque la relation maître/esclave est établie, le contrôle est toujours unilatéral, du maître à l'esclave.
  • 9.
    Architecture à 2niveaux (2 tiers)  L'architecture à deux niveaux caractérise les systèmes clients/serveurs pour lesquels le client demande une ressource et le serveur la lui fournit directement, en utilisant ses propres ressources. Cela signifie que le serveur ne fait pas appel à une autre application afin de fournir une partie du service.
  • 10.
    Architecture à 3niveaux (3-tier)  Dans l'architecture à 3 niveaux, il existe un niveau intermédiaire, c'est-à-dire que l'on a généralement une architecture partagée entre :  Un client, c'est-à-dire l'ordinateur demandeur de ressources, équipée d'une interface utilisateur (généralement un navigateur web) chargée de la présentation ;  Le serveur d'application middleware, chargé de fournir la ressource mais faisant appel à un autre serveur  Le serveur de données, fournissant au serveur d'application les données dont il a besoin.
  • 12.
    Cette architecture permetde spécialiser les serveurs dans une tache précise : Avantage de flexibilité, de sécurité et de performance . Potentiellement, l'architecture peut être étendue sur un nombre de niveaux plus important : On parle dans ce cas d'architecture à N niveaux (ou multi-tier .Voici schématisez cet architecture sur l'image ci-dessous.
  • 13.
    Comparatif des deux d'architecture L'architecture à deux niveaux est donc une architecture client/serveur dans laquelle le serveur est polyvalent, c'est-à-dire qu'il est capable de fournir directement l'ensemble des ressources demandées par le client.  Dans l'architecture à trois niveaux par contre, les applications au niveau serveur sont délocalisées, c'est-à-dire que chaque serveur est spécialisé dans une tâche (serveur web/serveur de base de données). L'architecture à trois niveaux permet :  Une plus grande flexibilité/souplesse ;  Une sécurité accrue car la sécurité peut être définie indépendamment pour chaque service, et à chaque niveau ;  De meilleures performances, étant donné le partage
  • 14.
    L'architecture multiniveaux  Dansl'architecture à 3 niveaux, chaque serveur effectue une tâche (un service) spécialisée. Un serveur peut donc utiliser les services d'un ou plusieurs autres serveurs afin de fournir son propre service. Par conséquent, l'architecture à trois niveaux est potentiellement une architecture à N niveaux...
  • 16.
    Les types deClients  Client "léger" Le poste client accède à une application située sur un ordinateur dit "serveur" via un interface et un navigateur Web. L'application fonctionne entièrement sur le serveur, le poste client reçoit la réponse "toute faite" à sa demande qu'il a formulée. (appelée : "requête" ) .  Client "lourd" Le poste client doit comporter un système d'exploitation capable d'exécuter en local une partie des traitements. Car le traitement de la réponse à la requête du client utilisateur va mettre en œuvre un travail combiné entre l'ordinateur serveur et le poste client .  Client "riche" Un interface graphique plus évolué permet de mettre en œuvre des fonctionnalités comparables à celles d'un client "lourd". Les traitements sont effectués majoritairement sur le serveur , la réponse "semi-finie" étant envoyée au poste client , où le client "riche" est capable de la finaliser et de la présenter.