Model klient-serwer
Model klient-serwer opisuje sposób, w jaki serwer udostępnia zasoby i usługi jednemu lub większej liczbie klientów. Przykładami serwerów są serwery internetowe, serwery pocztowe i serwery plików. Każdy z tych serwerów udostępnia zasoby urządzeniom klienckim, takim jak komputery stacjonarne, laptopy, tablety i smartfony. Większość serwerów ma relację jeden-do-wielu z klientami, co oznacza, że pojedynczy serwer może jednocześnie udostępniać zasoby wielu klientom.
Gdy klient żąda połączenia z serwerem, serwer może zaakceptować lub odrzucić połączenie. Jeśli połączenie zostanie zaakceptowane, serwer nawiązuje i utrzymuje połączenie z klientem za pośrednictwem określonego protokołu. Na przykład klient poczty elektronicznej może zażądać połączenia SMTP z serwerem pocztowym, aby wysłać wiadomość. Aplikacja SMTP na serwerze pocztowym poprosi następnie klienta o uwierzytelnienie, takie jak adres e-mail i hasło. Jeśli te dane uwierzytelniające pasują do konta na serwerze pocztowym, serwer wyśle wiadomość e-mail do zamierzonego odbiorcy.
Internetowe gry wieloosobowe również korzystają z modelu klient-serwer. Jednym z przykładów jest usługa Battle.net firmy Blizzard, na której dostępne są gry internetowe World of Warcraft, StarCraft, Overwatch i inne. Gdy gracze otwierają aplikację firmy Blizzard, klient gry automatycznie łączy się z serwerem Battle.net. Po zalogowaniu się do Battle.net gracze mogą zobaczyć, kto jeszcze jest online, rozmawiać z innymi graczami oraz rozgrywać mecze z innymi graczami lub przeciwko nim.
Chociaż serwery internetowe zazwyczaj zapewniają połączenia wielu klientom jednocześnie, każda fizyczna maszyna może obsłużyć tylko określoną ilość ruchu. Dlatego popularne usługi internetowe rozdzielają klientów między wiele fizycznych serwerów, korzystając z techniki nazywanej przetwarzaniem rozproszonym. W większości przypadków nie ma znaczenia, z którą konkretnie maszyną są połączeni użytkownicy, ponieważ wszystkie serwery zapewniają tę samą usługę.
NOTE: Model klient-serwer można porównać z modelem P2P, w którym klienci łączą się bezpośrednio ze sobą. W połączeniu P2P nie jest wymagany centralny serwer, ponieważ każda maszyna działa jednocześnie jako klient i serwer.
Sprawdź swoją wiedzę