Klienta servera arhitektūra

**Klienta/servera arhitektūra** ir skaitļošanas modelis, kurā vairāki komponenti strādā stingri noteiktās lomās, lai sazinātos. Serveris mitina, piegādā un pārvalda lielāko daļu klienta patērēto resursu un pakalpojumu. Šāda veida koplietojamo resursu arhitektūrai ir viens vai vairāki klientu datori, kas ir savienoti ar centrālo serveri, izmantojot tīklu vai interneta savienojumu.

Klienta/servera arhitektūra ir pazīstama arī kā tīkla skaitļošanas modelis vai klienta/servera tīkls, jo visi pieprasījumi un pakalpojumi tiek piegādāti tīklā. To uzskata par sadalītas skaitļošanas sistēmas formu, jo komponenti veic savu darbu neatkarīgi viens no otra.

Techopedia izskaidro klienta/servera arhitektūru

Klienta/servera arhitektūrā serveris darbojas kā ražotājs, un klients darbojas kā patērētājs. Serverī atrodas un tiek nodrošināti augstas klases, skaitļošanas ietilpīgi pakalpojumi klientam pēc pieprasījuma. Šie pakalpojumi var ietvert piekļuvi lietojumprogrammām, krātuvi, failu koplietošanu, piekļuvi printerim un/vai tiešu piekļuvi servera neapstrādātajai skaitļošanas jaudai.

Klienta/servera arhitektūra darbojas, kad klienta dators, izmantojot tīkla savienojumu, nosūta serverim resursa vai procesa pieprasījumu, kas pēc tam tiek apstrādāts un piegādāts klientam. Servera dators vienlaikus var pārvaldīt vairākus klientus, savukārt viens klients vienlaikus var būt savienots ar vairākiem serveriem, katrs nodrošina atšķirīgu pakalpojumu komplektu.

Klienta/servera modelis, kā tas attīstījās, diezgan labi kalpoja tam, ko daži dēvē par tīmekļa 2.0, kur internets lēnām kļuva par funkcionālu virtuālo telpu lietotājiem. Tas nodrošināja izveidotu un paredzamu modeli, kā noritēs lietotāju sesijas un kā pakalpojumu sniedzēji piegādāja resursus, pamatojoties uz datu pakešu un citu resursu pieprasījumiem.

Klienta/servera komunikācijas piemērs

Šeit ir piemērs tam, kā darbojas klienta/servera komunikācija. Vidēji izmantojot pārlūkprogrammu, lai piekļūtu servera puses vietnei, lietotājs vai klients ievada URL. DNS serveris meklē tīmekļa servera IP adresi un nodod to pārlūkprogrammai. Pārlūkprogramma ģenerē HTTP vai HTTPS pieprasījumu, un serveris kā ražotājs nosūta failus. Klients kā patērētājs tos saņem un pēc tam parasti nosūta papildu pieprasījumus.

Lai gan šis modelis tehniski darbojas daudzos līdzīgos procesos, tam ir daži trūkumi. Laika gaitā ir parādījusies alternatīva, ko sauc par *peer-to-peer* jeb P2P modelēšanu, kas, pēc daudziem domām, savā ziņā ir pārāka par tradicionālajiem klienta/servera modeļiem, jo ​​īpaši attiecībā uz konkrētu izaicinājumu risināšanu, kur komunikācija ir vairāk attīstīta.

Problēmas ar klientu/serveru modeļiem

Viena no lielākajām problēmām ar tradicionālo klienta/servera iestatīšanu ir neparedzamas darba slodzes raksturs.

Definējot klienta/servera sistēmas kā sistēmas, kas mērogojas vertikāli un izmanto centrālos datu krātuves, daži analītiķi uzskata, ka peer-to-peer ir elastīgāks un daudzpusīgāks, lai nodrošinātu, ka neparedzamas darba slodzes tiek labi pārvaldītas. Eksperti runā par tādām lietām kā atlaišanas un pieejamības zonas un kļūmjpārlēce kā līdzekli tiešsaistes biznesa sistēmu nevainojamai darbībai, neskatoties uz pieprasījuma izmaiņām vai citām problēmām.

Piemēram, vēl viena būtiska problēma ir izplatīta pakalpojuma atteikuma (DDoS) uzbrukuma lietderība. Šāda veida uzbrukumos nekontrolējama klienta darbība pārņem serveri. Tie, kas aplūko internetu pirms pāris gadu desmitiem, norāda, ka vietni bija diezgan viegli pārņemt ar DDoS uzbrukumu, jo vidējais klienta/servera modelis nebija iestatīts sliekšņiem, kas pārsniedz noteiktu trafika apjomu.

Vienādranga sistēmas var atrisināt daudzas no šīm problēmām un nodrošināt sistēmas pret DDoS uzbrukumiem un līdzīgiem kiberuzbrukumiem. Vienādranga saziņa ir noderīga arī dažu citu traucējumu risināšanā, pamatojoties uz vienu kļūmes punktu.

Līdz ar decentralizētu un sadalītu sistēmu parādīšanos, piemēram, blokķēdes nemainīgām virsgrāmatu tehnoloģijām, vienādranga sistēmas kļūst arvien populārākas un sāk aizstāt klienta/servera arhitektūras.

## Ārējās saites
* Client Server Architecture Kas ir klienta servera arhitektūra? What is Client Server Architecture?
* What Does Client 
* Computer science Datorzinātne computer science