Upload
others
View
45
Download
2
Embed Size (px)
Citation preview
Sfidat e projektimit apo dizanimit të Sistemeve të Distribuara
Dizajnerët e sistemeve të shpërndara duhet të marrin parasysh sfidat e mëposhtme:
• Heterogjenitetin
• Komponentët heterogjene duhet të jenë në gjendje të ndërveprojnë.
• Hapja/përhapja (openness)
• Sistemi duhet të lejojë komponentët që të shtohen, zëvendësohen aporidizajnohen.
• Sigurinë
• Sistemi duhet të përdoret vetëm në mënyrën e synuar.
2
Sfidat e projektimit apo dizanimit të Sistemeve të Distribuara
• Shkallëzueshmëria
• Sistemi duhet të punojnë në mënyrë efikase edhe në rastet kur numri i përdoruesve është në rritje.
• Performanca e sistemit duhet të rritet apo përforcohet me përfshirjen e burimeve shtesë.
• Trajtimi i dështimit
• Dështimi i një komponenti (dështim i pjesshëm) nuk duhet të rezultojë në dështim të të gjithë sistemit.
• Transparenca
• Shpërndarja duhet të jetë e fshehur nga përdoruesit sa më shumë të jetë e mundur.
3
Heterogjeniteti
• Komponentët heterogjene që duhet të jenë në gjendje të ndërveprojnë, zbatohen në:
• Rrjetet
• Arkitekturën Harduerike
• Sistemet Operative
• Gjuhët Programuese
• Shembujt që maskojnë dallimet në rrjet, sistemet operative, harduerike dhe softuerike për të siguruar heterogjenitet janë:
• Middleware
• Protokollet e internetit
• Kodi Mobile
4
Heterogjeniteti
• Middleware
• Middleware aplikohet në shtresën softuerike.
• Middleware ofron një abstraksion të programimit.
• Middleware maskon heterogjenitetin e rrjeteve themelore, harduerike,sistemet operative dhe gjuhëve programuese.
• (CORBA - Common Object Request Broker ) është një shembull i middleware.
5
Heterogjeniteti
• Kodi Mobil
• Kodi Mobil është kodi që mund të dërgohet nga një kompjuter në tjetrin dhe të ekzekutohet në destinacion.
• Java applets janë shembull i kodit mobil.
• Makinë virtuale
• Makina virtuale siguron një mënyrë për të bërë kod ekzekutues në çdo harduer.
6
Përhapja
• Sistemet e shpërndara duhet të jenë të zgjerueshme.
• Përhapja e një sistemi kompjuterik është karakteristikë që përcakton nëse sistemi mund të zgjerohet dhe të ri-zbatohet në mënyra të ndryshme.
• Hapi i parë i përhapjes është publikimi i dokumentacionit tëkomponentëve softuerike dhe ndërfaqëve të komponentëve për t'i vendosur në dispozicion për zhvilluesit e programeve.
7
Siguria
Siguria e një sistemi kompjuterik është karakteristikë se burimetjanë të qasshme për përdoruesit e autorizuar dhe përdoren nëmënyrën se si janë të destinuara. Siguria për burimet einformacionit ka tre komponentë:
• Fshehtësinë
• Mbrojtja kundër zbulimit ndaj individit të paautorizuar.
• Integritetin
• Mbrojtja kundër ndryshimeve apo korrupsionit.
• Disponueshmërinë
• Mbrojtja kundër ndërhyrjeve me mjetet për të hyrë në burime.
8
Sfidat e sigurisë
• Sulmi i Mohimit të shërbimit
• Sulmi i mohimit të shërbimit është një përpjekje përtë bëjë të padisponueshëm burimin e kompjuterit përpërdoruesit e tij të destinuar.
• Siguria e kodit mobil
• Kodi Mobil duhet të trajtohet me kujdes.• Psh marrja e një programi të ekzekutueshëm si një shtojcë në postën elektronike
për të shfaqur një fotografi interesante, por në realitet ajo mund të hyjë në burimetlokale, ose ndoshta të jetë pjesë e sulmit të mohimit të shërbimit.
10
Shkallëzimi
• Sistemet e shpërndara të shkallëzuara operojnë në mënyrë efektive dhe efikase në shkallë të ndryshme, duke filluar nga një Intranet të vogël në Internet.
• Sistemet e shpërndara të shkallëzuara mbeten efektive, kur ka një rritje të konsiderueshme në numrin e burimeve dhe numrin e përdoruesve.
11
Shkallëzimi
Sfidat për dizajnimin apo projektimin e sistemeve të shpërndara të skallëzuara janë:
• Kontrollimi i kostos apo çmimit të burimeve fizike
• Kostoja duhet linearisht të rritet me madhësinë e sistemit, psh nëse një server mjafton të shërbejë 20 klientë, dy serverë duhet të mjaftojnë për 40 klientë
• Kontrollimi i humbjes së performancës
• Për shembull, në të dhënat e strukturuara në mënyrë hierarkike, humbja e performancës së kërkimit për shkak të rritjes së të dhënave nuk duhet të jetë përtej O (log n), ku n është madhësia e të dhënave.
12
Trajtimi i dështimeve
• Dështimet në sistemet e shpërndara janë të pjesshme, që do të thotë se përderisa disa komponentë dështojnë të tjerët vazhdojnë të funksionojnë.
• Teknikat për trajtimin e dështimeve:
• Zbulimi i dështimeve
• Psh. Checksums
• Maskimi i dështimeve
• Psh. Ritransmetimi i mesazheve të korruptuara
• Psh. Redundanca apo teprica e file-eve.
13
Trajtimi i dështimeve
• Tolerimi i dështimeve
• Psh. trajtimi me përjashtim apo Exception
• Psh. Përfundimi i kohës apo Timeouts
• Shërimi apo recovery nga dështimi
• Psh. mekanizmat për rikthim apo rollback
• Teprica apo redundanca
• Psh. Më shumë se një komponetë (rrugë, serverë, database)
14
Konkurenca
• Me konkurrencën, shërbimet dhe aplikacionet mund të ndahen nga klientët në një sistem të distribuar apo të shpërndarë.
• Që një objekt të jetë i sigurtë në një mjedis me konkurrencë, operacionet e tij duhet të sinkronizohen në mënyrë të tillë që të dhënat e tij mbeten konsistente.
• Konkurrenca mund të arrihet nga teknikat standarde të tilla si semaforët, të cilat përdoren në shumicën e sistemeve operative.
15
Transparenca
• Transparenca është përcaktuar si fshehje e ndarjes së komponentëve në një sisteme të shpërndara nga përdoruesi dhe programuesi.
• Me transparencë sistemi është perceptuar më shumë si një tërësi se sa një koleksion i komponentëve të pavarura.
• Format e transparencës:
• Transparenca e qasjes apo aksesit
• Mundëson burimet lokale dhe në largësi (remote) të arrihen duke përdorur operacionet identike.
16
Transparenca në qasje
• Një ilustrim i transparencës në qasje do të ishte një GUI me folderë të cilëve ju qasemi njëjtë sikur fajllat brenda tij të jenë lokalë apo në largësi (remote).
• Një shembull i mungesës së transparencës në qasje mund të konsiderohet një system i distribuar i cili nuk ju lejon qasje të një kompjuteri në largësi përveq nëse përdor një ftp program.
17
Transparenca
• Transparenca e vendndodhjes apo lokacionit
• Mundëson burimet të arrihen pa dijeninë e vendndodhjes së tyre fizike ose të rrjetit (për shembull, cila ndërtesë ose cila IP adresë).
• URL-të janë location-transparent sepse pjesa e URL-se e cilaidentifikon emrin e domenit të një web server i referohet njëemri të kompjuteri në domen e jo një Internet adrese.
18
Transparenca
• Transparenca e konkurencës
• Mundëson disa procese të veprojnë në të njëjtën kohë duke përdorur burimet e përbashkëta, pa ndërhyrje mes tyre.
• Shembull do të ishte përdorimi i printerit në një rrjet.
19
Transparenca
• Transparenca e replikimit
• Përdor raste të shumta të burimeve për të rritur besueshmërinëdhe performancën, pa dijeninë e replikimit nga përdoruesit apoprogramuesit.
• Shembull do të ishte databaza e facebook-ut.
20
Transparenca
• Transparenca e dështimit
• Mundëson fshehjen e gabimeve, duke i lejuar përdoruesit dhe programet e aplikimit të përfundojnë detyrat e tyre, pavarësisht dështimit të komponenteve harduerike ose softuerike.
• Transparenca e dështimit mund të ilustrohet në kontekstit të e-mailit i cili eventualisht do të dorzohet edhe kur komunikimi ndermjet serverëve dështon. Gabimet maskohen duke bërë ritransmetimin e mesazhit derisa ai të përcjellet me sukses edhe nëse zgatë me ditë.
21
Transparenca
• Transparenca e lëvizshmërisë
• Lejon lëvizjen e burimeve dhe të klientëve brenda një sistemi pandikuar në funksionimin e përdoruesve apo programeve.(telefonia mobile)
• Transparenca e performancës
• Lejon që sistemi të riformohet për të përmirësuarperformancën kur ngarkesa të ndryshojnë.
• Transparenca e shkallëzuar
• Lejon sistemin dhe aplikacionet të zgjerohen në shkallë pandryshim të strukturës së sistemit ose aplikimit të algoritmeve.
22
Transparenca
• Dy transparencat më të rëndësishme janë qasja apo aksesi dhe transparenca e lokacionit që së bashku i referohen transparencës së rrjetit.
• Prania ose mungesa e transparencës së rrjetit ndikon më fuqishëm në shfrytëzimin e burimeve të shpërndara.
23
Përmbledhje
• Sistemet e shpërndara janë gjithkund.
• Interneti na mundëson që tju qasemi shërbimeve të tij kudo që jemi në botë.
• Secila organizatë menaxhon një intranet, i cili siguron shërbime locale dhe shërbime të internetit për shfrytëzuesit lokalë dhe në përgjithësi siguron shërbime shfrytëzuesëve të tjerë në internet
• Sistemet e vogla të shpërndara mund të ndërtohen nga kompjuterët mobil dhe paisje të tjera të cilat janë lidhur për një rrejt pa tela.
• Ndarja e burimeve (resurseve) është faktori kryesor motivues për ndërtimin e sistemeve të shpërndara.
• Burime si printerët, fajllat, web faqet apo të databazat menaxhohen nga serverët e tipit të caktuar. P.sh. Web serverët menaxhojnë web faqet dhe burimet e tjerat të webit.
• Burimet qasen nga klientët – p.sh. Klientët e web serverëve quhen shfletues (browserë)
24