第98届全国糖酒商品交易会

Klient–server (anglicky client–server, vyslovnost [?klai?nt ?s??v?(r)]) je sí?ová architektura, která odděluje klienta (?asto aplikaci s grafickym u?ivatelskym rozhraním) a server, kte?í spolu komunikují p?es po?íta?ovou sí?. Klient–server aplikace obsahují jak klienta, tak i server. Alternativou architektury klient–server je peer-to-peer, kde spolu v?ak komunikují po?íta?e mezi sebou bez serveru.
Klient–server popisuje vztah mezi dvěma po?íta?ovymi programy, v nich? první program, klient, ?ádá o slu?by jiny program zvany server. Na tomto modelu je zalo?en nap?íklad p?ístup na e-mail, Web, p?ístup k databázi apod. P?íkladem je webovy prohlí?e?, tj. klientsky program na u?ivatelském po?íta?i, ktery m??e p?istupovat k informacím na libovolném webovém serveru na světě. Chcete-li nap?íklad ze svého po?íta?e zkontrolovat z?statek na Va?em bankovním ú?tu, Vá? webovy prohlí?e? p?edá tento dotaz webovému serveru banky, tento server p?edá dotaz databázovému programu, ktery po?le dotaz databázovému serveru. Odtud je z?statek vrácen zpět do banky databázovému programu, ten ji zase po?le zpět do Va?eho webového prohlí?e?e a ten vysledny z?statek zobrazí.
Model klient/server se stal jedním z hlavních my?lenek sí?ové technologie. Tento model pou?ívá z u?ivatelského pohledu nap?íklad vět?ina obchodních ?i firemních aplikací. Z technického pohledu ho implementují nap?íklad i tyto internetové protokoly: HTTP (pro web), SMTP (e-mail), Telnet, DNS, amd.
Ka?dá instance klienta m??e posílat ?ádost o data jednomu nebo více p?ipojenym server?m. Na druhé straně, servery mohou akceptovat tyto ?ádosti, zpracovat je a vrátit klientovi po?adovanou informaci. Tento koncept m??e byt pou?it více r?znymi zp?soby, av?ak základ z?stává v zásadě stejny.
Klient/server obsahuje pouze dvě ?ásti: serverovou a klientskou. Tento typ architektury je někdy ozna?ován jako two-tier [?tu? ?ti?(r)] (dvouvrstvá). Umo?ňuje za?ízením sdílet soubory, nebo nějaké jiné zdroje.
Nej?astěj?í klienti jsou dnes webové prohlí?e?e. Servery jsou vět?inou webové servery, databázové servery a e-mailové servery, mohou se sem po?ítat i herní servery. V p?ípadě MMORPG provozuje server vyrobce hry, u dal?ích typ? her jako server slou?í jeden z hrá??, ktery spustí hru v serverovém módu (tzv. Host)
Interakce mezi klientem a serverem je ?asto popisována pomocí sekvence schémat. Sekven?ní diagramy jsou standardizovány v Unified Modeling Language.
Charakteristika
[editovat | editovat zdroj]Charakteristika klienta
[editovat | editovat zdroj]- Aktivní
- Posílá ?ádosti serveru
- ?eká a dostává odpovědi
- Obvykle je p?ipojen k malému po?tu server? najednou
- Obvykle komunikuje p?ímo s koncovymi u?ivateli, pomocí grafického u?ivatelského rozhraní
Charakteristika serveru
[editovat | editovat zdroj]- Pasivní
- Naslouchá na síti a reaguje na ?ádosti p?ipojenych, autorizovanych klient?
- P?i p?ijetí po?adavku jej obslou?í
- M??e vzdáleně instalovat/odinstalovat aplikace a p?ená?et data ke klient?m
Srovnání s Peer-to-peer architekturou
[editovat | editovat zdroj]Dal?í typ sí?ové architektury se nazyvá Peer-to-peer, nebo taky zkráceně P2P. U této architektury m??e ka?dy hostitel nebo instance programu fungovat zároveň jako klient i jako server (mají rovnocenné postavení i zodpovědnost).
Srovnání s Client–queue–client architekturou
[editovat | editovat zdroj]Architektura klient–fronta–klient je zjednodu?ením jak klient–server p?ístupu, tak P2P p?ístupu. Funkce serveru jsou omezeny na pasivní p?edávání zpráv a dat a klienti neplní roli serveru, ale implementují snadněj?í komunika?ní protokol. Architektura sestává ze dvou ?i více klient?, kte?í si vyměňují data a zprávy p?es nezávisly t?etí uzel, tzv. pasivní frontu.
Nap?íklad dva internetoví roboti mohou ově?it znalost ur?itého zpracovávaného URL prost?ednictvím centrální databáze, ani? by do?lo k p?ímé komunikaci mezi nimi (co? by odpovídalo modelu P2P) nebo by byli touto databází ?ízeni (co? by odpovídalo modelu klient–server).
Vyhody
[editovat | editovat zdroj]- Ve vět?ině p?ípad? architektura klient–server rozdělí jednotlivé úkoly a zodpovědnosti po?íta?ového systému mezi několik po?íta?? které spolu komunikují pouze prost?ednictvím sítě. Tím vzniká dal?í vyhoda této sítě, a to snadněj?í údr?ba. Nap?íklad je mo?né nahradit, opravit, modernizovat, p?emístit server, ani? by to klienti poznali, nebo tím byli nějak ovlivněni. Tato nezávislost na klientech se nazyvá zapouzd?ení.
- V?echny údaje jsou ulo?eny na serverech, které jsou mnohem bezpe?něj?í ne? vět?ina klient?. Servery mohou lépe kontrolovat p?ístup a zdroje, to zaru?uje, ?e p?istupovat a měnit data mohou pouze oprávnění klienti.
- Vzhledem k tomu, ?e se data ukládají centralizovaně, aktualizování údaj? je mnohem jednodu??í ne? u P2P sítí. V P2P sítích je pot?eba updatovat data na ka?dé stanici zvlá??, co? je pomalé a zp?sobuje mno?ství chyb, proto?e mohou mít tisíce nebo miliony klient?.
- Mnoho klient–server aplikací, které jsou dnes k dispozici, jsou navr?eny s ohledem na vy??í bezpe?nost, u?ivatelskou p?ívětivost a snadné pou?ívání.
Nevyhody
[editovat | editovat zdroj]- Velkym problémem je p?etě?ování sítě. Vzhledem k tomu, ?e po?et soubě?nych po?adavk? klient? na dany server se zvy?ují, server se m??e snadno p?etí?it. Naproti tomu u P2P sítí se ?í?ka pásma zvět?uje s mno?stvím klient?, proto?e ka?dy klient tvo?í uzel sítě.
- Architektura klient–server není tak robustní jako sítě P2P. Pokud dojde k vypadku serveru, ?ádosti klient? nemohou byt splněny. V P2P sítích jsou zdroje obvykle distribuovány mezi více uzl?. Dokonce i kdy? více uzl? p?eru?í sdílení dat, mělo by byt mo?né stáhnou data od zbyvajících uzl?.
Mezi zvlá?tní druhy server? pat?í webové servery, FTP servery, aplika?ní servery, databázové servery, po?tovní servery, souborové servery, tiskové servery a terminálové servery. Vět?ina webovych slu?eb jsou rovně? typy server?.
Odkazy
[editovat | editovat zdroj]Reference
[editovat | editovat zdroj]V tomto ?lánku byl pou?it p?eklad textu z ?lánku Client-server na anglické Wikipedii.
Související ?lánky
[editovat | editovat zdroj]- Peer-to-peer
- DTE, DCE – ozna?ení klientského a ?ídícího (serverového) za?ízení v telekomunikacích
Externí odkazy
[editovat | editovat zdroj]Obrázky, zvuky ?i videa k tématu klient–server na Wikimedia Commons