1 Klient-server-arkitektur
I de tidlige dagene av Internett ble klient-server-arkitekturen utbredt, selv om det var andre. Betydningen ligger i det faktum at alle nettverksdeltakere er delt inn i to logiske deler: klient og server.
Oppgaven til serveren (server, fra server - til server) er å betjene klientforespørsler. Serveren gjør det meste av jobben, lagrer alle nødvendige data og overvåker deres integritet. Og selv om det er datamaskiner som kaller servere, betyr vanligvis begrepene "klient" og "server" programvare.
Oppdraget til klienten er å leve i sin egen nytelse. Når klienten trenger noen data fra serveren, sender den en forespørsel til den. Etter en tid får han svar fra serveren og kan gjøre noe viktig med de mottatte dataene.
Forespørsler initieres alltid av klienten. Kommunikasjonsmodusen skjer alltid i form av et forespørsel-svar. På en måte er dette et synonym for konseptet "klient-server" .
Og hva er alternativene? Vel, for det første, peer-to-peer-nettverk, der alle deltakere er likeverdige (de kalles også peer-to-peer-nettverk). Hvis du og vennen din chatter eller sender tekstmeldinger, så er dette bare et eksempel på et peer-to-peer-nettverk. Hva er forskjellen?
Du kan skrive en melding og ikke få noe svar, og deretter sende en ny, og så videre. Din venn kan være initiativtaker til dialogen. Begge parter kan skrive først. All informasjon om dialogen lagres av begge parter, ingen plikter å svare.
Fordeler med klient-server-arkitektur:
Pålitelighet . Klienter kan være hvor som helst, selv på upålitelige plattformer. Windows på datamaskinen din kan krasje, iPhone-en din kan bli stjålet, og dataene som er lagret i skyen kommer ikke noe sted.
Svake og billige kunder . Hvis du trenger å lage en videoredigering på telefonen, laster du den opp til serveren og utfører den på serverfasilitetene. Klienten kan være et billig verktøy.
Balansert belastning . Hver klient har en individuell bruksplan, som kan være svært uberegnelig. Serveren mottar forespørsler fra tusenvis av klienter, belastningen er gjennomsnittlig og derfor bedre forutsigbar.
![Klient-server-arkitektur](https://cdn.codegym.cc/images/article/81d406ee-7c33-4d40-8d1e-b2574d12e217/512.jpeg)