Junior
Povedzte nám o dvojúrovňovej klient-serverovej architektúre (2-Tier).
sobes.tech AI
Odpoveď od AI
V architektúre s dvoma vrstvami sú dva hlavné komponenty: klient a server.
- Klient (Prezentačná vrstva): Zodpovedá za interakciu s používateľom a prezentáciu dát. Môže to byť desktopová aplikácia, webový prehliadač atď. Celá logika používateľského rozhrania a časť podnikovej logiky môže byť na strane klienta.
- Server (Dátová vrstva): Zodpovedá za ukladanie a správu dát, zvyčajne pomocou databázy. Klient posiela požiadavky priamo na server na získanie, pridanie, zmenu alebo vymazanie dát.
Výhody:
- Jednoduchý vývoj a nasadenie pre malé aplikácie.
- Vysoký výkon pri malom počte používateľov, pretože nie je medzivrstva.
Nevýhody:
- Obmedzená škálovateľnosť: pri zvyšovaní počtu klientov môže výkon klesať kvôli záťaži na databázovom serveri.
- Duplikácia podnikovej logiky: niektorá podniková logika môže byť implementovaná ako na klientovi, tak na serveri, čo sťažuje údržbu.
- Zložitosť podpory: zmeny v podnikovej logike alebo databáze často vyžadujú aktualizáciu všetkých klientov.
- Problémy so zabezpečením: priame požiadavky od klienta na databázu môžu predstavovať hrozbu.
Scenáre použitia:
- Jednoduché desktopové aplikácie s obmedzeným počtom používateľov.
- Intranetové aplikácie v malých firmách.
Príklad:
Jednoduchá desktopová aplikácia evidencie, ktorá priamo pristupuje k súborovej databáze (napríklad Access).
-- Príklad SQL dotazu od klienta na server
SELECT * FROM Customers WHERE City = 'Moscow';