první aplikace s jednoduchou monolitickou architekturou
spojení počítačů do sítě a není potřeba aby každý počítač uměl všechno
dochází ke specializaci jednotlivých PC → rychlejší přenosové cesty → sdílení specifik počítačů
architektury klient/server
klient/server
poskytuju služby (SW, data, aplikace,..)
Server - nabízí služby, ale sám čeká až o nějakou klient požádá
Klient - aktivne služby využívá, je to koncový uživatel aplikací
file-server / pracovní stanice
předchůdce klasického K/S
můžu uložit data na file serveru (místo na lokálním disku, což je zjevně fajn)
ALE! zpracovávat data musím na jiném místě, než jsou uložena → proto je musím přenést a to jsou velké soubory dat → takže se to zhroutí, přinejhorším
monolitická architerkuta - databázová, aplikační i prezentační vrstva jsou v jednom monobloku
dvouvrstvá architektura K/S
snaha spojit výhody obou variant monolitických systémů
rozděluje aplikaci na dva bloky a data už konečně zpracováv tam, kde jsou uložena, takže se nemusí nic přesouvat
databázová a prezentační logika je důsledně oddělena
1. část je přemístěna na server kde zpracovává data / 2. část zůtává klientovi se kterým komunikuje
aplikační je jak v databázovém serveru (skrz uložené procedury), tak v klientské části aplikace
takže aplikační je jak u klienta, tak na serveru!
verze s tenkým klientem
aplikační logika je v databázovém serveru
zvýšení nároků na výkon serveru
ale zajištění integrity dat na vyšší úrovni
verze s tlustým klientem
menší nároky na databázový server a větší využití výkonnostního potenciálu klientského počítače
ale zajištění integrity dat na nižší úrovni a nutnost neustále zamykat záznamy v databázi jednotlivými klienty
společné nevýhody:
pro každou aplikaci serveru nutný specifický klient
synchronní zpracování
omezená přenositelnost
různý jazyk prezentační a aplikační logiky
třívrstvá architektura K/S
důsledně oddělené všechny tři logiky (databázová, aplikační, prezentační)
prezentační:
uživatelské rozhraní (C, C++, Oracle Card, Visual Basic,…)
aplikační:
identifikuje uživatele pro zajištění bezpečnosti
zajišťují konzistentní, pro uživatele transparentní mechanismus pro pojmenovávání souborů a adresářů přes mnoho různých HW protokolů a protokolů OS
komunikační propojení s externími zdroji dat a transformují data do formátů požadovaných jinými servery a klienty
speciální funkce manipulující s daty, jako je synchronizace aktualizovaných dat přes nesourodé databáze
kontrola verzí a správa aktualizacízatížení systému efektivně rozděleno mezi databázový server, několik aplikačních serverů a velké množství klientů
databázový x aplikační == komunikace přes páteřní síť
aplikační x klient == lokální síť
dynamicky vyvažuje zátěž
plusy a mínusy:
+ zachování současných HW a SW investic
+ rozdílné uživatelské pohledy na data, nepřetržitý vývoj aplikací, dynamické zálohování, možnost výběru libovolného DBMS, možnost volby libovolného grafického rozhraní, online přístup k libovolnému zdroji dat
- komplikovanější návrh a implementace systému (je třeba dobře separovat jednotlivé vrstvy)
vícevrstvé architektury K/S
model network computing
nárust nákladů na systémovou správu ve firmách → řešením je nahrazení tlustého klienta tím tenkým
tlustý klient
aplikace už jsou dopředu nainstalované, pouze předpokládám že budou v budoucnu budoucně využity
→ těch aplikací je zbytečně moc a většinou se i zřídka kdy použijou
zabírá mi to místo na disku, paměti a žere to čas procesoru
počítač tloustne!!!
tenký klient
vše potřebné si stáhnu ze serveru → minimální požadavky na vybavenost PC
až práce skončí, všecho se smaže
síť zajišťuje výběr serveru
provozní náklady jsou značně pomenšeny
distribuovaný výpočet
Permalink server.1483822962.txt.gz · Last modified: by efox