Kliens-szerver architektúra

A számítástechnikában a kliens-szerver egy olyan szoftverarchitektúra-modell, amely két részből áll: kliensrendszerekből és szerverrendszerekből, amelyek egy számítógépes hálózaton vagy ugyanazon a számítógépen kommunikálnak egymással. A kliens-kiszolgáló alkalmazás egy kliens- és kiszolgálószoftverből álló elosztott rendszer. A kliens-kiszolgáló alkalmazás jobb módot biztosít a munkaterhelés megosztására. a kliens folyamat mindig kapcsolatot kezdeményez a kiszolgálóval, míg a kiszolgáló folyamat mindig várja bármelyik kliens kérését.

Ha az ügyfélfolyamat és a kiszolgálófolyamat ugyanazon a számítógépen fut, ezt nevezzük egyhelyes telepítésnek.

A kapcsolódó szoftverarchitektúra másik típusa a peer-to-peer, mivel minden egyes állomás vagy alkalmazáspéldány egyszerre lehet ügyfél és kiszolgáló (ellentétben a kliens-szerver modell központi szervereivel), és mivel mindegyikük egyenértékű felelősséggel és státusszal rendelkezik. A peer-to-peer architektúrákat gyakran rövidítik a P2P rövidítéssel.

Az ügyfél-kiszolgáló kapcsolat azt a kapcsolatot írja le, hogy az ügyfél milyen módon nyújt be szolgáltatási kérelmet a kiszolgálóhoz, és a kiszolgáló hogyan tudja ezeket a kérelmeket elfogadni, feldolgozni és a kért információt visszaküldeni az ügyfélnek. Az ügyfél és a kiszolgáló közötti kölcsönhatást gyakran szekvencia-diagramokkal írják le. A szekvencia diagramokat az Unified Modeling Language szabványosítja.

Mind az ügyfél-kiszolgáló, mind a P2P architektúrák széles körben elterjedtek.

A kliens-kiszolgáló szoftverarchitektúra alaptípusa csak kétféle hosztot használ: klienseket és kiszolgálókat. Ezt az architektúrát néha kétszintűnek is nevezik. A kétszintű architektúra azt jelenti, hogy az ügyfél az egyik szint, a szerverfolyamat pedig a másik szint.

A kliens-szerver szoftverarchitektúra a hálózati számítástechnika egyik alapvető modelljévé vált. Számos alkalmazástípus készült a kliens-kiszolgáló modell alkalmazásával. Az olyan szabványos hálózati funkciók, mint az e-mail-csere, a webes hozzáférés és az adatbázis-hozzáférés, az ügyfél-kiszolgáló modellen alapulnak. A webböngésző például a felhasználó számítógépén lévő kliensprogram, amely a világ bármelyik webkiszolgálóján lévő információhoz hozzáférhet.

Egy peer-to-peer alapú hálózat.Zoom
Egy peer-to-peer alapú hálózat.

Egy szerver alapú hálózat.Zoom
Egy szerver alapú hálózat.

Ügyfelek jellemzői

  • Mindig kéréseket kezdeményez a kiszolgálókhoz.
  • Várja a válaszokat.
  • Válaszokat kap.
  • Általában egyszerre kis számú kiszolgálóhoz csatlakozik.
  • Általában közvetlenül lép kapcsolatba a végfelhasználókkal bármilyen felhasználói felület, például grafikus felhasználói felület segítségével.

Kiszolgálói jellemzők

  • Mindig várjon az egyik ügyfél kérésére.
  • Kiszolgálja az ügyfelek kéréseit, majd válaszol az ügyfeleknek a kért adatokkal.
  • Egy kiszolgáló kommunikálhat más kiszolgálókkal az ügyfélkérés kiszolgálása érdekében.
  • Ha a kérés feldolgozásához további információkra van szükség (vagy a biztonság megvalósítására), a kiszolgáló a kérés feldolgozása előtt további adatokat (jelszavakat) kérhet az ügyféltől.
  • A végfelhasználók jellemzően nem közvetlenül a kiszolgálóval lépnek kapcsolatba, hanem egy klienst használnak.

Előnyök

  • A legtöbb esetben a kliens-szerver architektúra lehetővé teszi, hogy a számítástechnikai rendszer szerepének és felelősségi körének romlását több független, egymással csak hálózaton keresztül ismert számítógép között osszák szét, így e modell egyik előnye a könnyebb karbantarthatóság. Lehetőség van például egy kiszolgáló cseréjére, javítására, frissítésére vagy akár áthelyezésére, miközben a kliensek nem tudnak róla, és nem is érinti őket ez a változás. Ezt a változástól való függetlenséget kapszulázásnak is nevezik.
  • Minden adatot a szervereken tárolnak, amelyek általában jobb biztonsági ellenőrzésekkel rendelkeznek, mint a legtöbb ügyfél. A szerverek jobban tudják ellenőrizni a hozzáférést és az erőforrásokat, így garantálva, hogy csak a megfelelő jogosultságokkal rendelkező ügyfelek férhetnek hozzá az adatokhoz és módosíthatják azokat.
  • Mivel az adattárolás központosított, az adatok frissítése sokkal egyszerűbb a rendszergazdák számára, mint ami egy P2P-architektúra esetén lehetséges lenne. P2P-architektúra esetén az adatfrissítéseket esetleg szét kell osztani és alkalmazni kell a hálózat minden egyes "egyenrangú félre", ami időigényes és hibakockázatos, mivel több ezer vagy akár több millió egyenrangú fél is lehet.
  • Számos fejlett ügyfél-kiszolgáló technológia áll már rendelkezésre, amelyeket úgy terveztek, hogy biztosítsák a biztonságot, a felhasználóbarát felületeket és a könnyű használatot.
  • Több különböző specifikációjú ügyféllel működik.

Hátrányok

  • A hálózati forgalom blokkolása az ügyfél-kiszolgáló modellhez kapcsolódó egyik probléma. Ahogy nő az egyidejűleg egy adott kiszolgálóhoz érkező ügyfélkérések száma, a kiszolgáló túlterhelté válhat. Ezzel szemben a P2P-hálózat sávszélessége valójában növekszik, ahogy egyre több csomópontot adunk hozzá, mivel a P2P-hálózat teljes sávszélessége nagyjából kiszámítható a hálózat minden egyes csomópontja sávszélességének összegeként.
  • Az ügyfél-kiszolgáló modell és a Peer to Peer modell összehasonlításakor, ha egy kiszolgáló meghibásodik, az ügyfelek kérései nem tudnak kiszolgálásra kerülni, de a P2P hálózatok esetében a kiszolgálók általában sok csomópont között vannak elosztva. Még ha egy vagy több csomópont meg is hibásodik, például ha egy csomópont nem tudott letölteni egy fájlt, a többi csomópontnak akkor is rendelkeznie kell a letöltés befejezéséhez szükséges adatokkal.

Példák

Kérdések és válaszok

K: Mi az a kliens-szerver szoftverarchitektúra?


V: Az ügyfél-kiszolgáló szoftverarchitektúra egy két részből, ügyfélrendszerekből és kiszolgálórendszerekből álló modell, amelyek egy számítógépes hálózaton vagy ugyanazon a számítógépen kommunikálnak egymással.

K: Hogyan működik egy ügyfél-kiszolgáló alkalmazás?


V: Az ügyfél-kiszolgáló alkalmazás egy elosztott rendszer, amely ügyfél- és kiszolgálószoftverekből áll. Az ügyfélfolyamat mindig kapcsolatot kezdeményez a kiszolgálóval, míg a kiszolgálófolyamat mindig várja bármelyik ügyfél kérését.

K: Mi történik, ha az ügyfél- és a kiszolgálófolyamat ugyanazon a számítógépen fut?


V: Amikor az ügyfél- és a kiszolgálófolyamat is ugyanazon a számítógépen fut, ezt nevezzük egyhelyes beállításnak.

K: Milyen előnyökkel jár a kliens-kiszolgáló alkalmazás használata?


V: Az Ügyfél-kiszolgáló alkalmazás használata jobb módot biztosít a munkaterhelés több számítógép vagy felhasználó közötti megosztására.

K: Ki kezdeményezi a kapcsolatokat az Ügyfélkiszolgáló alkalmazásokban?


V: Az ügyfélkiszolgáló alkalmazásokban mindig az ügyfélfolyamat kezdeményezi a kapcsolatokat.


K: Ki várja a kéréseket az Ügyfélkiszolgáló alkalmazásokban?


V: Az Ügyfélkiszolgáló alkalmazásokban mindig a Kiszolgáló folyamat várja a kéréseket.

K: Hogyan oszthatja meg több számítógép vagy felhasználó a munkaterhelést egymással?


V: Több számítógép vagy felhasználó megoszthatja a munkaterhelést egy elosztott rendszer, például egy Ügyfélkiszolgáló alkalmazás használatával.

AlegsaOnline.com - 2020 / 2023 - License CC3