CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Client-serveur - Wikipédia

Client-serveur

Un article de Wikipédia, l'encyclopédie libre.

Vous avez de nouveaux messages (diff ?).

L'architecture client/serveur désigne un mode de communication entre des ordinateurs et des logiciels. Les mots « serveur » et « client » désignent les logiciels de type serveur et client dans cette architecture, logiciels fonctionnant sur les ordinateurs qu'on nomme par abus de langage serveur informatique et poste client.

  • Le serveur est à l'écoute d'un réseau informatique, prêt à répondre aux requêtes envoyées par des clients.
  • Les clients sont généralement pilotés par des utilisateurs. Ils prennent l'initiative d'envoyer des requêtes au serveur, puis attendent la réponse pour la donner, le cas échéant, à l'utilisateur.
  • Un serveur est capable de servir plusieurs clients simultanément, jusqu'à plusieurs milliers.
  • Le serveur et le client utilisent le même protocole de communication.

L'architecture trois tiers est une extension de l'architecture client-serveur.

L'architecture client/serveur correspond à la généralisation des ordinateurs de type PC dans les entreprises (dans les agences, les points de vente, …) et est une architecture à deux niveaux :

  • les règles de gestion, les traitements et les accès aux données sont réalisés sur le serveur central,
  • les contrôles de saisie, les enchainements des dialogues sont effectués sur les postes client.

Ce modèle minimise les flux sur le réseau et tire partie de la puissance des machines locale et centrale.

[modifier] Exemples d'architectures client-serveur

Cet article (ou cette section) est à recycler. Sa qualité peut être largement améliorée en le réorganisant et en le clarifiant.
L'utilisateur qui appose ce bandeau est invité à énoncer les points à améliorer en page de discussion.

  • Le fonctionnement client/serveur le plus connu est celui des sites Web. Chaque site est hébergé sur un serveur Web ; les internautes qui consultent le site utilisent un logiciel client, le navigateur Web, pour envoyer des requêtes au serveur. Dans ce cas le protocole utilisé est HTTP.
  • L'autre système client/serveur très connu est celui du courriel, où les courielleurs sont des clients, et les serveurs de mel des serveurs. Dans ce cas les protocoles utilisés sont SMTP, POP, IMAP.
  • Un modèle très classique en entreprise est une relation client/serveur de données avec traitements (affichage, saisie) sur le poste client local et accès aux données (via SQL) sur le serveur central. Les interfaces (IHM) de présentation sont ceux typiques des applications fenêtrées (interfaces pouvant être riche et interactive : boutons, aides contextuelles, liste déroulantes, etc …).
  • Le système X Window est un exemple typique d'architecture client/serveur. Un logiciel serveur X Window fournit des services d'affichage graphiques, tels que création et déplacement de fenêtres, gestion des boutons, la gestion des polices de caractères, des zones de saisie et des listes déroulantes… Les applications clientes peuvent alors totalement se décharger des tâches d'affichage local ou distant (sur une autre machine). Dans le cas de X Window, le logiciel serveur fonctionne généralement sur un poste de travail (de type PC sous Windows ou Linux, mais aussi Mac ou station de travail Unix, parfois sur un serveur Unix) et le client tourne généralement sur la même machine, mais il est courant que les applications clientes tournent sur une autre machine (serveur Unix/Linux).

[modifier] Architecture trois tiers et n tiers

L'architecture client/serveur est courante dans les applications où de nombreux utilisateurs doivent accéder à une même base de données. On distingue, dans ces applications, plusieurs couches logicielles :

  • La couche présentation (c'est-à-dire client) qui est la partie du logiciel que l'on trouve du côté de l'utilisateur final. Comme son nom l'indique, cette partie ne contient que l'interface utilisateur (le plus souvent, une interface graphique sous X Window, MS Windows ou Mac OS)
  • La couche de gestion des données (le serveur), qui consiste en une base de données ou tout système de stockage des données
  • La couche logique qui est le cœur même de l'application ; elle fait le lien entre le client et le serveur, et forme ce que l'on appelle le serveur d'application.

Ce type d'architecture en trois couches est appelé architecture trois tiers.

Cependant, la couche logique n'est pas nécessairement isolée : en effet, elle peut très bien être déplacée vers le serveur (sous forme, par exemple, de procédures stockées dans la base de données), ou vers le client (toute l'application se trouvant alors sur le poste client, on ne fait plus que demander des données au serveur, via par exemple ODBC ou SQLNet…). Une telle architecture en deux couches est appelée 2-tiers.

Des architectures n-tiers sont bien entendu possibles, en combinant un ou plusieurs serveurs d'application (offrant chacun des services distincts) et une ou plusieurs bases de données.

L'emplacement physique des différentes couches composant une telle application est tout à fait variable.
Dans une application 3-tiers, par exemple, les trois couches peuvent être :

  • trois programmes distincts fonctionnant sur une même machine
  • le client sur une machine, les deux autres couches sur une deuxième machine
  • trois programmes fonctionnant chacun sur une machine distincte.

L'avantage théorique des applications client-serveur est la possibilité de remplacer une couche indépendamment des autres : pouvoir migrer par exemple une partie cliente de Visual Basic vers PowerBuilder sans avoir à modifier ni la base de données, ni le serveur d'application. Mais en pratique, tout n'est pas si rose : les couches sont en réalité rarement totalement indépendantes les unes des autres, et la modification d'une couche entraîne très souvent des modifications dans les autres. D'autre part, la complexité de l'application augmente proportionnellement au nombre de couches à développer et fiabiliser. Enfin, la maintenance de telles applications est plus complexe :

  • lorsqu'une erreur survient, il n'est pas toujours évident de déterminer la couche fautive.
  • lorsqu'une nouvelle version de l'application doit être livrée aux utilisateurs, toutes les couches doivent être livrées simultanément pour éviter les problèmes de désynchronisation entre les versions des clients, des serveur(s) d'application et des serveur(s) de données.
Portail de l'informatique – Accédez aux articles de Wikipédia concernant l’informatique.
Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Sub-domains

CDRoms - Magnatune - Librivox - Liber Liber - Encyclopaedia Britannica - Project Gutenberg - Wikipedia 2008 - Wikipedia 2007 - Wikipedia 2006 -

Other Domains

https://www.classicistranieri.it - https://www.ebooksgratis.com - https://www.gutenbergaustralia.com - https://www.englishwikipedia.com - https://www.wikipediazim.com - https://www.wikisourcezim.com - https://www.projectgutenberg.net - https://www.projectgutenberg.es - https://www.radioascolto.com - https://www.debitoformtivo.it - https://www.wikipediaforschools.org - https://www.projectgutenbergzim.com