360 likes | 866 Vues
SOFTWARE ENGINEERING (REKAYASA PERANGKAT LUNAK ). 11 Arsitektur Sistem Terdistribusi. By : Andi Latifa Nabone. Arsitektur multiprosesor Arsitektur Client-Server Arsitektur Objek Terdistribusi CORBA. Materi yang akan dibahas.
E N D
SOFTWARE ENGINEERING (REKAYASA PERANGKAT LUNAK) 11ArsitekturSistemTerdistribusi By : AndiLatifaNabone
Arsitekturmultiprosesor • Arsitektur Client-Server • ArsitekturObjekTerdistribusi • CORBA Materi yang akandibahas
Hampirsemuasistemberbasis-komputer yang besar, saatinimerupakansistemterdistribusi (sistemtersebar) • Kegiatanmemprosesinformasidisitribusikankepadasejumlahkomputersebagaipenggantikomputertunggal • RekayasaPerangkatLunakTerdistribusisekarangmenjadiisu yang penting SistemTerdistribusi
Sistem Personal yang tidakterdistribusidandirancanguntukberjalanpadapersonelkomputeratau workstation. Contoh : Word,Spreadsheet,grafisdll • Sistem embedded yang berjalanpadasatuprosesorataupadakelompokprosesor yang terintegrasi • Sistemterdistribusi (tersebar) dimanaperangkatlunaksistemberjalanpadasekelompokprosesor yang bekerjasamadanterintegrasisecaralonggar, dengandihubungkanolehjaringan Jenis-JenisSistem
Pemakaianbersamasumberdaya • Keterbukaan • Konkurensi • Skalabilitas • Toleransikesalahan • Transparansi KarakteristikSistemterdistribusi
Arsitektur Client-Server • Sistem dapat dianggap sebagai satu set layanan yg disediakan untuk Client. Server penyedia layanan, server dan client dilakukan berbeda. • Arsitektur Objek Terdistribusi • Tidak ada perbedaan antara server dan client, sistem dapat dianggap sebagai satu objek yang berinteraksi yang lokasinya tidak relevan. Tidak ada perbedaan antara server dan client ArsitekturSistemTerdistribusi
Perangkatlunak yang dapatmenanganibagian-bagian yang beragam agar dapatberkomunikasidanbertukar data • Istilah middleware mengacukepadaposisiditengah-tengahdari software inidiantaraberbagaikomponensistemterdistribusi yang berbeda • Contoh : • Transaction processing monitors • Data convertors • Communication controllers Middleware
Merupakan model sistemterdistribusi yang paling sederhana • Sistemterdiridarisejumlah proses yang dapat (tapitidakmesti) berjalanpadabeberapaprosesor yang terpisah • Model iniumumpadasistem real-time yang besar • Pendistribusian proses keprosesordapatditentukansebelumnyaataubisajugadikendalikanolehdispatcher yang memutuskan proses yang manadialokasikankemasing-masingprosesor ArsitekturMultiprosesor
Model Aplikasidimanasekumpulanlayanandisediakanoleh Server dansekumpulan Client yang membutuhkanlayanantersebut • Klientahu server dan server tidakperlutahu client nya • Klientdan server beradapada proses logikal • Tidakharusadapemetaan 1:1 antar proses denganprosesorpadasistem Arsitektur Client-Server
LapisanPresentasi • Berhubungandenganpenyajianinformasike user dandengansemuainteraksi user • LapisanPemrosesanInformasi • Berhubungandenganimplementasilogikaaplikasi • LapisanManajemen Data • Berhubungandengansemuaoperasi database ArsitekturLapisanAplikasi
Model Thin-client • Pada model inisemuapemrosesanaplikasidanmanajemen data dilakukanpada server. Klienbertanggungjawabuntukmenjalankanperangkatlunakpresentasi • Model Fat-client • Pada model ini, server hanyabertanggungjawabuntukmanajemen data. Perangkatlunakpadaklienmengimplementasilogikaaplikasidaninteraksidengan user sistem Thin Client dan Fat Client
Model inimerupakan model yang paling sederhanauntukdigunakanketikasistemwarisan (legacy) sentraldikembangkanmenjadiarsitektur Client-Server. • Kekuranganterbesardari model thin-client adalahbahwa model tersebutmenempatkanbebanberatpemrosesanpadapada server danjaringan Model Thin Client
Menggunakankekuatanpemrosesan yang tersediadanmendistribusikanpemrosesanlogikaaplikasidanpresentasikepadaklien • Server harusmerupakan server transaksi yang menanganisemuatransaksi database • Lebihrumitdibandingkan model thin client terutamaaspekmanajemen.Aplikasidiinstal di semua client Model Fat Client
Padaarsitektur three-tier , tiaplapisanarsitekturaplikasidapatdieksekusidenganprosessor yang terpisah • Arsitekturinimempunyaiunjukkerja yang lebihbaikdibandingkanpendekatan thin-client danlebihsederhanamengelolanyadibandingkanpendekatan fat-client • Arsitektur yang dapatdikembangkan- bila demands bertambah , makatinggalmenambahA more scalable architecture - as demands increase, extra servers can be added Arsitektur Three-Tier
Pada model Client-Server sistemterdistribusi, kliendan server berbeda • Klienmenerimalayanandari server dantidakdariklienlainnya • Server dapatbertindaksebagaikliendanmenerimalayanandari server lainnya • Klientidakmemintalayanandariklien • Model inimembatasifleksibilitasperancangsistemdalamartiperancangharusmemutuskankapanlayanandiberikan • Pendekatan yang lebihumumbagisistemterdistribusiadalahmenghilangkanperbedaanantarakliendan server, danmerancangarsitektursistemsebagaiarsitekturobjekterdistribusi ArsitekturObjekTerdistribusi
SisteminimemungkinkanperancangsistemmenundakeputusanmengenaidimanadanbagaimanalayananharusdisediakanSisteminimemungkinkanperancangsistemmenundakeputusanmengenaidimanadanbagaimanalayananharusdisediakan • Model inimerupakanarsitektur yang sangatterbuka yang meungkinkansumber day abaruditambahkanjikaperlu • Sisteminisangatfleksibeldandaptdikembangkandenganmudah • Rekonfigurasisistemsecaradinamisakandimungkinkandenganobjekberimigrasimelintasijaringanbilamanadiperlukan Keuntungan Model ArsitekturSistemTerdistribusi
Sebagai model logika yang memungkinkanAndamenstrukturdanmengorganisasikansistem. Dalamhalini , yang perludipikirkanmengenaibagaimanamenyediakanfungsionalitassistemhanyadalamhitunganlayanandankombinasilayanan • Sebagaipendekatan yang fleksibelterhadapsistemklien-server. Dalamhalini , model logikasistemmerupakan model client-server, tetapibaik client maupun server direalisasikansebagaiobjekterdistribusi yang berkomunikasimelalui bus perangkatlunak PenggunaanArsitekturObjekTerdistribusi
Data mining adalahcontohdarisistemarsitekturobjekterdistribusi • Data mining akanmencarihubungandalamsejumlah database yang berbeda • Objek integrator masing-masingdapatmenanganihubungan-hubungankhususdanmengumpulkaninformasidarisemua database untukmencobamenyimpulkanhubungannya • Objekvisualiserberinteraksidenganobjek integrator untukmenghasilkanvisualisasiataulaporanmengenaihubungan yang telahditemui Sistem data-mining
CORBA adalahstandarinternasionaluntukObject Request Broker - middleware - untukmengelolakomunikasidiantaraobjek yang didistribusikan • Ada beberapaimplementasidari CORBA yang tersedia • DCOM [ Distributed Component Object Mode] adalahalternatif lain dari CORBA yengmerupakanproduk Microsoft • CORBA didefinisikanoleh The Object Management Group [OMG] CORBA[Common Object Request Broker Architecture]
OMG mengusulkan agar aplikasiterdistribusiterbuatdarisejumlahkomponen : • ObjekAplikasi : yang dirancangdandiimplementasikanuntukaplikasiini • ObjekStandar : yang didefinisikanoleh OMG untuk domain khusus. Misalnyauntukkeuangan/asuransi, e-comm, kesehatandll. • Layanan CORBA : fundamental yang menyediakanlayanankomputasiterdistribusidasarsepertidirektori, manajemensekuritas , dll. • Fasilitas CORBA horizontal, seperti user interface, fasilitasmanajemensistemdll. StrukturAplikasi
Objek CORBA merupakanenkapsulasi status dengan interface yang terdefinisidenganbaikdannetraldalamhalbahasa yang dideskripsikandalam IDL [interface definition language] • Model objekuntukobjekaplikasi • Object Request Broker (ORB) yang menanganipermintaanakanlayananobjek • Satu set layananobjek yang merupakanlayananumumdanmungkindiperlukanolehbanyakaplikasiterdistribusi • Satu set komponenumum, yang dibangundiataslayanan-layanandasar yang mungkindibutuhkanolehaplikasiini. Standard CORBA
Objek CORBA dapatdikomparasi , secaraprinsip, denganobjek di dalam C++ dan Java • Keduamestiterpisahdandinyatakandengan IDL • Olehkarenanyadiperlukanpemetaandari IDL kebahasapemrograman (C++, Java, etc.) • Dengandemikian object yang ditulisdenganbahasa yang berbedadapatberkomunikasisatudenganlainnya Object CORBA
LayananPenamaandanLayananPertukaran • Memungkinkanobjekmengacukedanmenemukanobjek lain padajaringan • LayananPengumuman • Memungkinkanobjekmemberitahuobjek lain telahterjadi event • LayananTransaksi • Mendukungtransaksi atomic dan rollback (kembalikeasal) jikaadakesalahan Layanan CORBA