Zhrnutie na Servery, klient-server architektúra a inflácia

Servery, Klient-Server Architektúra a Inflácia: Podrobný Rozbor

Úvod

Server a klient-server architektúra sú základom fungovania internetu a mnohých aplikácií, ktoré denno-denne používame. Tento materiál vysvetlí, čo je server, ako sú servery navrhnuté, aké operačné systémy používajú, ako funguje klient-server komunikácia v programovaní a ako sa tento model používa v databázach.

Definícia: Server je výkonný počítač alebo softvér, ktorý poskytuje služby iným zariadeniam v sieti — tzv. klientom.

1. Základné pojmy

Kto je klient a kto server

  • Klient: zariadenie alebo program, ktorý žiada službu (napr. webový prehliadač alebo e-mailový klient).
  • Server: zariadenie alebo softvér, ktorý službu poskytuje (napr. webový server, databázový server).
  • Služba: konkrétna funkcia, napr. zdieľanie súborov, posielanie e-mailov, poskytovanie webových stránok.

Definícia: Klient je aplikácia alebo zariadenie, ktoré posiela požiadavky serveru. Server je aplikácia alebo zariadenie, ktoré tieto požiadavky spracuje a odpovie.

Typické príklady serverov

  • Webový server: Apache, Nginx
  • Databázový server: MySQL, PostgreSQL
  • Súborový server: NAS alebo Windows File Share
  • E-mailový server, herný server

2. Architektúra serverov

Architektúra popisuje, ako je server navrhnutý a ako spolupracuje so zvyškom infraštruktúry.

Typy architektúry

  • Jednoúčelové servery: každý server má jednu úlohu (napr. iba databáza).
  • Multifunkčné servery: jeden server vykonáva viacero úloh súčasne.
  • Blade servery: modulárne dosky v racku, šetria miesto a zjednodušujú údržbu.
  • Cluster: skupina serverov spolupracujúcich pre vyššiu spoľahlivosť a výkon.
  • Cloudová architektúra: servery v dátových centrách poskytujú služby cez internet (napr. Google Cloud, AWS).

Porovnanie typov (tabuľka)

TypVýhodyNevýhody
Jednoúčelový serverJednoduchá konfigurácia, bezpečnosťVyššie náklady pri viacerých úlohách
Multifunkčný serverÚspora HW, menej zariadeníRiziko zlyhania viacerých služieb naraz
ClusterVysoká dostupnosť, škálovateľnosťZložitejšia správa
CloudFlexibilita, platba za použitieZávislosť na poskytovateľovi
💡 Vedeli ste?Did you know that veľké služby ako Netflix alebo Gmail používajú clustery a cloudové riešenia na to, aby zvládli milióny súčasných používateľov bez výpadku?

3. Serverové operačné systémy

Serverové OS sú optimalizované pre stabilitu a dlhodobý chod.

Definícia: Serverový operačný systém je systém navrhnutý na spoľahlivé poskytovanie sieťových služieb, správu používateľov a bezpečnosť.

Najčastejšie systémy

  • Windows Server: často využívaný vo firemných sieťach, integrácia s Active Directory.
  • Linux (Ubuntu Server, CentOS, Debian): open-source, používaný pre webhosting a databázy.
  • UNIX (napr. Solaris): tradičné prostredie pre veľmi stabilné systémy.
  • VMware ESXi: hypervízor pre virtualizáciu serverov.

Bežné funkcie serverových OS

  • Správa používateľov a práv
  • Sieťové služby: DHCP, DNS, LDAP
  • Bezpečnostné politiky (firewally, aktualizácie)
  • Virtualizácia virtuálnych strojov

4. Programovanie: klient-server architektúra

Ako model funguje

  1. Klient vytvorí požiadavku (napr. kliknutie na odkaz).
  2. Požiadavka sa odošle serveru cez sieť.
  3. Server prijme požiadavku, spracuje ju (napr. načíta z databázy) a pripraví odpoveď.
  4. Klient prijme odpoveď a zobrazí výsledok používateľovi.

Definícia: Klient-server je model komunikácie, kde klient žiada služby a server ich poskytuje.

Typy komunikácie

  • Synchronous (synchronná): klient čaká na okamžitú odpoveď (napr. načítanie stránky).
  • Asynchronous (asynchronná): klient nečaká; odpoveď príde neskôr (napr. AJAX, push notifikácie).
  • Jednosmerná / dvojsmerná: tradičné HTTP je jednosmerné z klienta na server, WebSocket umožňuje dvojsmernú komunikáciu v reálnom čase.

Bežné protokoly

ProtokolPoužitie
HTTP/HTTPSWebové stránky, REST API
FTPPrenos súborov
SMTP/IMAPE
Zaregistruj sa pre celé zhrnutie
KartičkyTest znalostíZhrnutiePodcastMyšlienková mapa
Začni zadarmo

Už máš účet? Prihlásiť sa

Servery a klient-server

Klíčové pojmy: Server poskytuje služby klientom, Klient žiada službu, server odpovedá, Typy serverov: web, DB, súborový, e-mailový, Architektúra: jednoúčelový, multifunkčný, cluster, cloud, Serverové OS: Windows Server, Linux, UNIX, VMware ESXi, Klient-server workflow: požiadavka -> spracovanie -> odpoveď, Komunikácia: synchronná vs asynchronná; WebSocket pre real-time, Bežné protokoly: HTTP/HTTPS, TCP/IP, FTP, SMTP/IMAP, WebSocket, Databázový server spracúva SQL dotazy a centralizuje údaje, Výhody centralizovaných DB: bezpečnosť, viac klientov súčasne, Cluster a cloud zvyšujú dostupnosť a škálovateľnosť, Virtualizácia umožňuje spúšťať viaceré servery na jednom HW

## Úvod Server a klient-server architektúra sú základom fungovania internetu a mnohých aplikácií, ktoré denno-denne používame. Tento materiál vysvetlí, čo je server, ako sú servery navrhnuté, aké operačné systémy používajú, ako funguje klient-server komunikácia v programovaní a ako sa tento model používa v databázach. > **Definícia:** Server je výkonný počítač alebo softvér, ktorý poskytuje služby iným zariadeniam v sieti — tzv. klientom. ## 1. Základné pojmy ### Kto je klient a kto server - **Klient:** zariadenie alebo program, ktorý žiada službu (napr. webový prehliadač alebo e-mailový klient). - **Server:** zariadenie alebo softvér, ktorý službu poskytuje (napr. webový server, databázový server). - **Služba:** konkrétna funkcia, napr. zdieľanie súborov, posielanie e-mailov, poskytovanie webových stránok. > **Definícia:** Klient je aplikácia alebo zariadenie, ktoré posiela požiadavky serveru. Server je aplikácia alebo zariadenie, ktoré tieto požiadavky spracuje a odpovie. ### Typické príklady serverov - Webový server: Apache, Nginx - Databázový server: MySQL, PostgreSQL - Súborový server: NAS alebo Windows File Share - E-mailový server, herný server ## 2. Architektúra serverov Architektúra popisuje, ako je server navrhnutý a ako spolupracuje so zvyškom infraštruktúry. ### Typy architektúry - **Jednoúčelové servery:** každý server má jednu úlohu (napr. iba databáza). - **Multifunkčné servery:** jeden server vykonáva viacero úloh súčasne. - **Blade servery:** modulárne dosky v racku, šetria miesto a zjednodušujú údržbu. - **Cluster:** skupina serverov spolupracujúcich pre vyššiu spoľahlivosť a výkon. - **Cloudová architektúra:** servery v dátových centrách poskytujú služby cez internet (napr. Google Cloud, AWS). ### Porovnanie typov (tabuľka) | Typ | Výhody | Nevýhody | |---|---|---| | Jednoúčelový server | Jednoduchá konfigurácia, bezpečnosť | Vyššie náklady pri viacerých úlohách | | Multifunkčný server | Úspora HW, menej zariadení | Riziko zlyhania viacerých služieb naraz | | Cluster | Vysoká dostupnosť, škálovateľnosť | Zložitejšia správa | | Cloud | Flexibilita, platba za použitie | Závislosť na poskytovateľovi | Did you know that veľké služby ako Netflix alebo Gmail používajú clustery a cloudové riešenia na to, aby zvládli milióny súčasných používateľov bez výpadku? ## 3. Serverové operačné systémy Serverové OS sú optimalizované pre stabilitu a dlhodobý chod. > **Definícia:** Serverový operačný systém je systém navrhnutý na spoľahlivé poskytovanie sieťových služieb, správu používateľov a bezpečnosť. ### Najčastejšie systémy - **Windows Server:** často využívaný vo firemných sieťach, integrácia s Active Directory. - **Linux (Ubuntu Server, CentOS, Debian):** open-source, používaný pre webhosting a databázy. - **UNIX (napr. Solaris):** tradičné prostredie pre veľmi stabilné systémy. - **VMware ESXi:** hypervízor pre virtualizáciu serverov. ### Bežné funkcie serverových OS - Správa používateľov a práv - Sieťové služby: DHCP, DNS, LDAP - Bezpečnostné politiky (firewally, aktualizácie) - Virtualizácia virtuálnych strojov ## 4. Programovanie: klient-server architektúra ### Ako model funguje 1. Klient vytvorí požiadavku (napr. kliknutie na odkaz). 2. Požiadavka sa odošle serveru cez sieť. 3. Server prijme požiadavku, spracuje ju (napr. načíta z databázy) a pripraví odpoveď. 4. Klient prijme odpoveď a zobrazí výsledok používateľovi. > **Definícia:** Klient-server je model komunikácie, kde klient žiada služby a server ich poskytuje. ### Typy komunikácie - **Synchronous (synchronná):** klient čaká na okamžitú odpoveď (napr. načítanie stránky). - **Asynchronous (asynchronná):** klient nečaká; odpoveď príde neskôr (napr. AJAX, push notifikácie). - **Jednosmerná / dvojsmerná:** tradičné HTTP je jednosmerné z klienta na server, WebSocket umožňuje dvojsmernú komunikáciu v reálnom čase. ### Bežné protokoly | Protokol | Použitie | |---|---| | HTTP/HTTPS | Webové stránky, REST API | | FTP | Prenos súborov | | SMTP/IMAP | E