Serveri määratlus, tüübid ja kuidas server töötab

Võrgujargoonis on server arvuti, mis edastab mitmesugust teavet kasutajatele või kliendimasinatele. Tavaliselt teeb server paljude klientide jaoks vaid mõningaid spetsiifilisi töid — iga sellist tööd nimetatakse teenuseks. Teenuseid kasutavad teised arvutid, mida kutsutakse klientideks, ning nende kahe vahel valitsevat suhet nimetatakse kliendi ja serveri suhteks. Näiteks Vikipeedia puhul töötavad Vikipeedia teenuste taga veebiserverid, mis saadavad Internetis veebilehti. Teie kliendiarvuti suhtleb Vikipeedia veebiteenusega, et neid lehti alla laadida. Serverid võivad ka võõrustada internetimänge, jagada faile ning anda juurdepääsu perifeersetele seadmetele nagu printerid. Lihtsustatult võib öelda, et üksikud arvutid ühenduvad võimsamate arvutitega — serveritega —, mis hoiavad faile ja veebisisu ning võimaldavad nendeni kaugjuurdepääsu üle Interneti.

Kuidas server töötab

Et serverid ja kliendid saaksid omavahel suhelda, peavad nad olema ühendatud võrku ja kasutama sama protokolli. Protokoll on reegelkomplekt ehk "keel", mis määrab, kuidas andmeid edastatakse ja milliseid käske kasutatakse. Näiteks veebilehtede edastamiseks kasutatakse tihti HTTP-protokolli (või selle turvalist varianti HTTPS). Teie arvuti kasutab HTTP(S)-i, et küsida Vikipeediast lehekülgi ja server vastab vajaliku sisuga, saates veebilehti teie arvutisse, mis need kuvab.

Tehniliselt toimub suhtlus tavaliselt järgmiselt: klient avab võrguühenduse serveri kindla pordi (näiteks veebiserveri puhul port 80 või 443) vastu, saadab päringu ja server vastab päringule vastava andmepaketiga. Serveritarkvara töötab sageli taustaprotsessina (daemon), mis kuulab sissetulevaid päringuid ja teenindab neid vastavalt konfiguratsioonile.

Tüübid ja rollid

Servereid on mitut tüüpi, sõltuvalt sellest, millist teenust nad osutavad. Levinumad näited:

  • Veebiserver — teenindab veebilehti (HTTP/HTTPS)
  • Failiserver — jagab ja salvestab faile võrgus (failijagamine)
  • Meiliserver — edastab ja säilitab e-kirju (SMTP, IMAP, POP3)
  • Andmebaasiserver — haldab struktureeritud andmeid ja vastab päringutele (SQL)
  • Mänguserver — majutab internetimänge ja sünkroniseerib mänguseisundeid
  • DNS-server — tõlgib domeeninimed IP-aadressideks
  • Print-server — haldab võrgus olevaid printereid ja perifeerseid seadmeid
  • Proxy ja tulemüüri serverid — filtreerivad ja vahendavad liiklust turvalisuse eesmärgil

Riistvara, tarkvara ja töömaht

Tavaliselt on serverid ehitatud olema võimsamad, usaldusväärsemad ja pidevalt töös. Neid kütkestatakse sageli spetsiaalse riistvara (palju mälumahtu, mitu protsessorituuma, RAID-salvestus, UPS) ning serverite puhul pannakse tähtsust järelvalvele ja vigade vältimisele. Mõnikord töötavad serverid klastrina — mitu masinat koos tagavad suurema jõudluse ja kättesaadavuse.

Serveritarkvara võib töötada ka "ühe masinaga, mis teeb mitut asja" olukorras, kuid suure koormuse korral kasutatakse eraldatud ressursse või virtuaalmasinaid/konteinereid. Kui serverile pöördub korraga liiga palju kasutajaid, võib tema jõudlus kokku kukkuda ehk "server aeglustub" või isegi lülituda välja, kui süsteem kaitseb end ülekoormuse eest.

Operatsioonisüsteemid ja konfiguratsioon

Tüüpilised serverite operatsioonisüsteemid on Linux, FreeBSD, NetBSD ja OpenBSD. Erinevalt tavalistest lauaarvutitest ei ole serveritel sageli monitori, klaviatuuri ega hiirt — neid hallatakse üle võrgu (remote access) kasutades tööriistu nagu SSH. Kui serveril ei ole vaja palju teha, võib serveritarkvara töötada arvutis, mis samal ajal teeb ka muid töid, kuid tootmiskeskkonnas eelistatakse tavaliselt spetsiaalseid või virtualiseeritud lahendusi.

Skaleerimine, koormuse tasakaalustamine ja kättesaadavus

Suurte koormuste juhtimiseks kasutatakse mitmeid tehnikaid:

  • Koormuse tasakaalustajad (load balancers) suunavad päringud mitme serveri vahel.
  • Klastrid ja replikatsioon tagavad, et üks serveri rike ei katkesta teenust (failover).
  • Virtuaalmasinad ja konteinerid (nt Docker, Kubernetes) võimaldavad kiiret skaleerimist.
  • CDN-id (Content Delivery Networks) vähendavad koormust kaughoidlatesse koormuse hajutamise abil.

Turvalisus ja haldus

Serverite turvalisus on kriitiline. Levinumad meetmed hõlmavad tulemüüre, turvatud ühendusi (SSH, TLS/HTTPS), regulaarseid tarkvarauuendusi, turvalist autentimist (võtmed, kahefaktoriline autentimine), ligipääsulogimist ja varundusi. Lisaks on oluline jälgida ressursside kasutust, rakendada piiranguid (rate limiting) ja konfigureerida õiged õigused failisüsteemil.

Peer-to-peer ja alternatiivsed mudelid

Peer-to-peer süsteemis toimivad kõik osapooled nii klientide kui serveritena — iga arvuti võib jagada ressursse teistega. Seda kasutatakse sageli failijagamises ja VOIP-is, kuid see mudel võib teatud juhtudel hõlbustada ka piraatluskatseid.

Lühike kokkuvõte

Server on spetsialiseerunud arvuti või tarkvaraprotsess, mis pakub teenuseid teistele arvutitele võrgus. Selle toimimise alus on võrguprotokollide (nt HTTP, SMTP, FTP, DNS) kokkulepe, see võib töötada eri tüüpi riist- ja tarkvaralahendustel ning selle skalaarimine, turvalisus ja haldus on võtmetähtsusega, et tagada usaldusväärne ja kiire teenus kasutajatele.

Serverite virnZoom
Serverite virn

Veebiserver

Veebiserver on teatud tüüpi server, mida kasutatakse veebisaitide majutamiseks. Veebiserverite tarkvara on näiteks Apache või IIS. Veebiserver võib võõrustada ühte või mitut veebisaiti. Veebiserveri vaikimisi kasutatav port on port 80 (HTTP) või 443 (HTTPS).

Mõned veebiserverid teevad muid asju kui lihtsalt veebilehe teenindamine. Näiteks võib neil olla midagi, mida nimetatakse SSI-ks, mis muudab veebilehe koostamise lihtsamaks.

Veebiserverid kasutavad selliseid teenuseid nagu CGI, et lasta serveris oleval tarkvaral teha veebilehti. Mõned programmeerimiskeeled, mis võivad kasutada CGI-d, on skriptikeeled nagu Perl, Python, PHP või ASP. Mõned on kompileeritud keeled nagu C++ või Java.

Seotud leheküljed

  • Failiserver

Küsimused ja vastused

K: Mis on server?


V: Server on arvuti, mis pakub kasutajale või kliendimasinale mitmesugust teavet. Tavaliselt teeb ta paljude klientide jaoks ainult mõned asjad.

K: Kuidas nimetatakse kliendi ja serveri vahelist suhet?


V: Kliendi ja serveri vahelist suhet nimetatakse kliendi ja serveri suhteks.

K: Kuidas serverid pakuvad veebilehti Internetis?


V: Serverid pakuvad veebilehti Internetis, kasutades HTTP-protokolli, mis saadab veebilehti neid küsivatele arvutitele.

K: Mida muud saavad serverid teha peale veebilehtede hostimise?


V: Lisaks veebilehtede majutamisele võivad serverid majutada ka internetimänge, jagada faile ja anda juurdepääsu perifeersetele seadmetele, näiteks printeritele.

K: Kuidas on üksikud arvutid ühendatud serveritega?


V: Üksikarvutid on ühendatud mõne võimsa arvutiga, mida nimetatakse serveriteks, et salvestada faile ja teavet veebisaidi kujul, nii et erinevad kasutajad kõikjal maailmas saaksid neile failidele internetiühendusega ligi.

K: Mida peavad masinad omavahel suhtlema, et nad saaksid omavahel suhelda?



V: Selleks, et masinad saaksid omavahel rääkida, peavad nad olema ühendatud võrku ja kasutama sama suhtlusprotokolli, mis toimib masinate jaoks nagu keel.

AlegsaOnline.com - 2020 / 2025 - License CC3