L’architecture Client/serveur Réaliser par : Lakhdar Nassim Lebied Taha Younes Deriger par : Mme Ghanem
Plan Introduction Qu’est-ce qu’architecture client serveur Les type de l’architecture client serveur Découpage d’une application en client et serveur Le Middleware Les protocoles Les APIs de l’internet Les types de serveurs Les avantages / les inconvénient Conclusion
Introduction Ces vingt dernières années ont vues une évolution majeure des systèmes d'information, à savoir le passage d'une architecture centralisée à travers de grosses machines (des Mainframe) vers une architecture distribuée basée sur l'utilisation de serveurs et de postes clients grâce à l'utilisation des PC et des réseaux
Qu’est-ce qu’architecture client serveur Le Client-serveur est une architecture où un Poste client exécute une application se trouvant sur un serveur. Il y a plusieurs types d’architecture de C/S selon que les applications et les données se trouvent sur le même ordinateur que le poste client ou non. On parle d’architecture de un à trois niveaux. Internet propose lui une architecture client serveur "Multi-niveaux"
Les type de l’architecture client serveur 2-tiers Les type de l’architecture client serveur le client demande une ressource et le serveur la lui fournit directement Le serveur utilise ses propres ressources Cela signifie que le serveur ne fait pas appel à une autre application afin de fournir une partie du service
3-tiers Dans l'architecture à 3 tiers il existe un niveau intermédiaire fournissant au serveur d'application les données dont il a besoin équipée d'une interface utilisateur (généralement un navigateur web) chargée de la présentation Le serveur d'application chargé de fournir la ressource mais faisant appel à un autre serveur
n-tiers Un serveur peut utiliser les services d'un ou plusieurs autres serveurs afin de fournir son propre service Dans l'architecture de n-tiers, chaque serveur effectue une tâche spécialisée
Découpage d’une application en client et serveur Trois parties Sont intégrées et coopèrent pour le fonctionnement de l'application Présentation : interface utilisateur pour interagir avec l application Persistance : Enregistrement sur support physique des données de l'application Services métier : Services offerts aux utilisateurs Ex: créer un document, le modifier, ajouter des sections, l'enregistrer ...
Dans l architecture a 2 tiers il ya deux éléments de base entièrement coté client Présentation Services Métiers Persistance entièrement coté serveur Client Serveur Présentation Services Métiers Persistance
Dans l architecture a 3 tiers Les 3 principaux tiers s'exécutent chacun sur une machine différente Client Serveur de base de données Présentation Services Métiers Persistance Serveur d'applications
Dans l architecture a n tiers Rajoute des étages / couches en plus a l architecture 3-tiers elle a une compositions horizontale ou des Services métier utilise d'autres services métiers.
Le Middleware Ensemble de services logiciels construits au dessus d’un protocole de transport afin de permettre l’échange de requêtes et des réponses associées entre client et serveur de manière transparente
Le Middleware (suite) Middleware Protocole applicatif L’API d’acces à la couche transport Des services complémentaire
Les protocoles Les protocoles applicative definite : le format des messages échangés entre les processus émetteur et récepteur les types de messages : requête, réponse, … l'ordre d'envoi des messages Exemples SNMP pour l'administration de réseau les types de HTTP pour le Web POP/IMAP/SMTP pour le courrier électronique
Les APIs de l’internet Les principales API de l’internet : L’API (Application Programming Interface) est un moyen pour accéder a la couche transport a partir de la couche réseaux Les principales API de l’internet : Les sockets. Les RPC (Remote Procedure Call).
Les sockets Les sockets peuvent être vues comme un point d’accès par lequel un processus peut envoyer ou recevoir des données. La socket se présente sous la forme d’un descripteur de fichier. Les sockets sont une interface d’accès au réseau au dessus du service transport. C’est une interface souple mais de bas niveau.
Les types de serveurs Serveurs Serveur concurrent Serveur itératif il ya 2 types de serveurs Serveurs Serveur concurrent Serveur itératif Souvent utiliser en mode connectée Souvent utiliser en mode non connectée désigne une implémentation capable de gérer plusieurs tâches en apparence simultanées désigne une implémentation qui traite une seule requête à la fois Adaptée au requetes qui demande un certain tratement Adaptée aux réquete qui peuvent s’adapter facilement
Les avantages Toutes les données sont centralisées sur un seul serveur, ce qui simplifie les contrôles de sécurité, l'administration, la mise à jour des données et des logiciels. Les technologies supportant l'architecture client-serveur sont plus matures que les autres. La complexité du traitement et la puissance de calculs sont à la charge du ou des serveurs, les utilisateurs utilisant simplement un client léger sur un ordinateur terminal qui peut être simplifié au maximum. Recherche d’information : les serveurs étant centralisés, cette architecture est particulièrement adaptée et véloce pour retrouver et comparer de vaste quantité d'informations (moteur de recherche sur le Web), ce qui semble être rédhibitoire pour le P2P beaucoup plus lent, à l'image de Freenet.
Les inconvénients Si trop de clients veulent communiquer avec le serveur au même moment, ce dernier risque de ne pas supporter la charge (alors que les réseaux pair-à-pair fonctionnent mieux en ajoutant de nouveaux participants). Si le serveur n'est plus disponible, plus aucun des clients ne fonctionne (le réseau pair-à-pair continue à fonctionner, même si plusieurs participants quittent le réseau). Les coûts de mise en place et de maintenance peuvent être élevés. En aucun cas les clients ne peuvent communiquer entre eux, entrainant une asymétrie de l'information au profit des serveurs
La conclusion Malgré le peu de defaut que l architecture client serveur a, ça reste une architecture qu'elle a apporté une centralisation des ressources, une meilleur sécurité, une meilleur flexibilité et surtout une meilleur fiabilité pour les reseaux
Bibliographie Le cours de MASAR L’architecture client/serveur . STIC MasterTechnologies del'Internet 1ère année EricCariou Université de Pau et des Pays de l'Adour UFR SciencesPau – DépartementInformatique OlivierAuber . Laprogrammationclient-serveur http://fr.scribd.com/doc/19215590/Architecture-Client-Serveur https://docs.google.com/viewer?a=v&q=cache:FfJZCQ2fCIEJ:web.univ-pau.fr/~ecariou/cours/sd- m1/cours- architecture.pdf+les+differentes+architectures+client+serveur&hl=en&gl=dz&pid=bl&srcid=ADGE ESjRUuV8z-g5y2x-wwk9QhAdFqFk05rTZK06LP4lsNxFJupiwr2G5tv0Yy- bdhFtJL3AOIvaVen3Ha4rBLzum_vtD7utQIv7m2oMu- PBAwV0kT1guM9LoaVGh_R7rbxM0kmaM6O_&sig=AHIEtbQ_Dbg_ix1s3vlErakj-MSPtGVP5w http://fr.wikipedia.org/wiki/Client-serveur http://phortail.org/webntic/Client-Serveur-presentation.html http://mrproof.blogspot.com/2011/03/larchitecture-client-serveur.html
Merci pour votre attention