Predavanje 08 Flashcards
(31 cards)
Arhitekturni stilovi raspodijeljenih sustava
- arhitektura klijent-poslužitelj
- višerazinska i posrednička arhitektura
- uslužno usmjerena arhitektura
Arhitekturni stil - definicija
Najviša razina apstrakcije programske potpore - ne opisuje nisku implementacijsku razinu
Raspodijeljeni sustav - definicija
Raspodijeljeni sustav sastoji se od skupa nezavisnih računala, povezanih mrežom i posredničkim programima, koja omogućuje koordinaciju rada i dijeljenje resursa, tako da korisnici doživljavaju sustav kao jedinstveni računalni sustav.
Primjeri raspodijeljenih sustava
- klijent - poslužitelj
- peer to peer
- srodne socijalne mreže
- kolaborativno izračunavanje
- slanje poruka u stvarnom vremenu
- upravljanje složenim sustavima
Poslužitelj - definicija
Program koji dostavlja uslugu drugim programima koji su spojeni na njega preko komunikacijskog kanala
Klijent - definicija
Program koji pristupa poslužitelju (ili više njih) tražeći uslugu
Alternative arhitekturi klijent - poslužitelj
- implementacija jednog programa na jednom računalu koji obavlja sve poslove
- računala nisu spojena u mrežu, već svako računalo obavlja svoj posao odvojeno
- ostvariti neki drugi mehanizam kako bi računala u mreži razmjenjivala informacije
Prednosti arhitekture klijent - poslužitelj
- posao se može raspodijeliti na više računala
- klijenti udaljeno pristupaju funkcionalnostima poslužitelja
- klijent i poslužitelj mogu se oblikovati odvojeno
- oba entiteta mogu biti jednostavnija
- svi podaci mogu se držati na jednom mjestu
- podaci se mogu i distribuirati na više udaljenih klijenata i poslužitelja
- poslužitelju može istodobno pristupiti više klijenata
- klijenti mogu ići u natjecanje za uslugu
Rizici arhitekture klijent - poslužitelj
- sigurnost
- potreba za adaptivnim održavanjem
Principi oblikovanja arhitekture klijent - poslužitelj
- podijeli pa vladaj
- povećaj koheziju
- smanji međuovisnost
- povećaj apstrakciju
- povećaj ponovnu uporabivost
- povećaj uporabu postojećeg
Višerazinska organizacija - što radi?
- organizira program u razinama
- svaki sloj je grupa modula koja nudi kohezivni skup usluga
- upotreba mora biti jednosmjerna
Općenito, trorazinska arhitektura sadrži
- korisničku
- logičku
- podatkovnu razinu
Sustav tankog klijenta
što manji klijent, što više toga na poslužitelju
Sustav debelog klijenta
što više posla delegira se klijentima, lakša komunikacija poslužitelja s više klijenata
Prednosti arhitekture s više razina
- oblikovanje temeljem više razine apstrakcije
- podupire povećanje i poboljšanje sustava
- podupire ponovnu uporabu, prenosivost
Nedostaci arhitekture s više razina
- teško odrediti optimalno preslikavanje odgovornosti na razine
- ponekad je izračunavanje i funkcionalnosti sustava ne mogu razbiti na razine
- tuneliranje kroz razine
Posrednička razina - definicija
Sveobuhvatna programska podrška koja omogućava uzajamno djelovanje aplikacija bez potrebe za upoznavanjem i kodiranjem svih operacija nužnih za implementaciju usluge
Vrste posredničkih i zastupničkih arhitektura
- transakcijski usmjerena
- zasnovana na porukama
- objektno usmjerena
Primjeri posredničke i zastupničke arhitekture
- .NET
- EJB
- CORBA
- MPI
Interakcija komponenata
Temelji se na nekom mehanizmu udaljenog poziva procedura (RPC)
Prednosti posredničke i zastupničke arhitekture
- transparentnost lokacija
- izmjenjivost i proširivost komponenti
- prenosivost
- interoperabilnost različitih sustava
- ponovna uporaba
Nedostaci posredničke i zastupničke arhitekture
- smanjena efikasnost
- veća osjetljivost na pogreške
Uslužno usmjerena arhitektura - definicija
Organizira primjenski program kao kolekciju usluga koje međusobno komuniciraju uporabom dobro definiranih sučelja i protokola
SOAP protokol - definicija
Neovisan o platformi, zasnovan na XML-u, namijenjen komunikaciji aplikacija