BAB X ARSITEKTUR SISTEM TERDISTRIBUSI

dokumen-dokumen yang mirip
BAB 1 PENDAHULUAN 1.1 Pendahuluan

Middleware Sebagai Jembatan Platform yang berbeda. Budi Susanto

PROSES, OBJEK DAN LAYANAN TERDISTRIBUSI

Distributed Object CORBA and RMI

Basis Data 2. Database Client / Server. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

Model Sistem Terdistribusi

Sistem Terdistribusi 2. Model arsitektur Terdistribusi

Sistem terdistribusi. Albertus dwi yoga widiantoro, M.Kom

Model arsitektur Terdistribusi

PROSES. Sistem Terdistribusi

DISTRIBUTED OBJECT CORBA & RMI. Sistem terdistribusi week 13

Fase pertama: single user, single tasking

Web Services merupakan salah satu bentuk implementasi dari arsitektur model aplikasi N-Tier yang berorientasi layanan. Perbedaan Web Services dengan

MODEL ARSITEKTUR SISTEM INFORMASI TERDISTRIBUSI

ARSITEKTUR NETWORKING CLIENT

CONTOH PENDSTRIBUSIAN HARDWARE

Software Architecture. Muhammad Bagir, S.E., M.T.I

WEB SERVICES. Sistem terdistribusi week 12

BAB V Remote Procedure Call (RPC)

BAB 1 Service Oriented Architecture 1.1 Evolusi SOA

KOMUNIKASI PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Komunikasi Data 2. Protocol 3. Remote Procedure Call 4. Object Remote

BAB I PENDAHULUAN 1.1 Latar Belakang dan Permasalahan Tabel 1.1 Jumlah mahasiswa STMIK AMIKOM Purwokerto

SERVICE ORIENTED ARCHITECTURE (SOA)

Sistem Jaringan Terdistribusi

Teknik Informatika S1

KONSEP DASAR CLIENT SERVER. Chapter 1

BAB II TINJAUAN PUSTAKA

Contoh diatas merupakan aplikasi yang menggunakan server sebagai temapat penyimpanannya dan client sebagai tempat input data atau proses lainnya.

PENERAPAN ARSITEKTUR THREE-TIER DENGAN COM+ DALAM PORTAL JURNAL

TUGAS SISTEM INFORMASI TERSEBAR

Bab II. TINJAUAN PUSTAKA

BAB I PENDAHULUAN 1.1. Latar Belakang

Mengenal Java RMI. Wiranti Sri Utami. Abstrak. Pendahuluan.

BAB I PENDAHULUAN. I.1 Latar Belakang Permasalahan

Pemrograman Jaringan 12 CORBA

1. Hardware terdistribusi. 2. Program terdistribusi. Nama : Gede Doddi Raditya Diputra NIM : Kelas : 5.C

Sharing Printer dengan Samba. Oleh. Md. Chrisna donny andrian. V c

Pertemuan XI Database Connectivity Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

SISTEM TERDISTRIBUSI. Agenda : - Pengantar Sistem Terdistribusi - Karakteristik Sistem Terdistribusi - Model Sistem Terdistribusi. Yuli Purwati, M.

ARSITEKTUR INFORMASI PENJUALAN TRAKTOR, ALAT PANEN DAN SPARE PART

SISTEM OPERASI TERDISTRIBUSI

Kelompok 1. Anggota : BOBBY KURNIAWAN NIA FITRIANA ARI FEBRYANSYAH DIAN ULUMIA ORIN HARITSA YASSER

BAB II LANDASAN TEORI

BAB III LANDASAN TEORI

Teknik Informatika S1

PEMROGRAMAN SISTEM TERSEBAR

Making Provisions for Applications and Services

DOKUMEN 3. MODEL KOMPONEN Versi 1.0 DIREKTORAT JENDERAL BINA ADMINISTRASI KEUANGAN DAERAH DEPARTEMEN DALAM NEGERI REPUBLIK INDONESIA

SILABUS SISTEM TERDISTRIBUSI (S1 - Sistem Informasi) (KK ) MINGGU POKOK BAHASAN MATERI SUMBER

TUGAS TELEMATIKA KOLABORASI DAN ARSITEKTUR CLIENT SERVER KELOMPOK 4: Amal Fajrin ( ) Suhartini ( ) Tri Fitriah ( )

Tujuan 04/07/ :01

Teknik Informatika Universitas Pasundan. Caca E. Supriana, S.Si.,MT.

STRATEGI PENGEMBANGAN PERANGKAT LUNAK SI Oleh : Hanif Al Fatta

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

BAB 2. Tinjauan Pustaka

Firewall & WEB SERVICE

Pemrograman Jaringan 11 RMI

BAB II LANDASAN TEORI. Dalam pembangunan suatu sistem informasi, terdapat dua kelompok

By : Agung surya permana ( )

BAB I PENDAHULUAN. 1.1 Latar Belakang

Making Provisions for Applications and Services

DISTRIBUTED FILE SYSTEM. Sistem terdistribusi week 11

JENIS-JENIS APLIKASI UNTUK SERVER MENGADMINISTRASI SERVER DALAM JARINGAN. Pembahasan: Habib Ahmad Purba. 0 P a g e

Jurnal Ilmiah INOVASI, Vol.14 No.2 Hal , Mei-Agustus 2014, ISSN

BAB I PENDAHULUAN. I.1 Latar Belakang

BAB 2 LANDASAN TEORI

Pokok Bahasan 2 Teknologi Dasar Internet dan Web. L. Erawan

BAB II LANDASAN TEORI. Basis Data Terdistribusi didefinisikan sebagai sebuah collection of multiple,

Seminar Nasional Aplikasi Teknologi Informasi 2004 Yogyakarta, 19 Juni 2004

PENDAHULUAN. Gambar 1.1 Arsitektur Two-Tier 2 1 BAB I

2.1. Sistem Komunikasi

BAB I PENDAHULUAN I.1 Latar Belakang

BAB III LANDASAN TEORI

Sistem Terdistribusi Proses. S1 Sistem Komputer Musayyanah, S.ST, MT

BAB II. KAJIAN PUSTAKA

Distribusi Fungsi. Dengan pembagian fungsi untuk tiap komponen dalam sistem client server, berikut manfaat yang ada :

BAB I PENDAHULUAN 1.1 Latar Belakang

Bab 6. Basis Data Client / Server POKOK BAHASAN: TUJUAN BELAJAR: 6.1 PENDAHULUAN

BAB II KAJIAN PUSTAKA

BAB II LANDASAN TEORI. mengenai istilah-istilah yang digunakan dalam menyusun laporan skripsi, yaitu

Pemahaman mengenai Model arsitektur SisTer Mengetahui Sudut pandang logis Arsitektur Sistem Tersebar. Memahami model Arsitektur sistem

BAB II LANDASAN TEORI. Pada tahap ini berisi pengertian dan penjelasan teori-teori yang digunakan penulis untuk pembangunan sistem.

KOMUNIKASI. Universitas Informatika dan Bisnis Indonesia. 2.1 Komunikasi Data

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI. Internet adalah singkatan dari Interconnection network, merupakan

TEKNOLOGI APLIKASI WEB BERBASIS SERVER

APLIKASI PENCARI IDL DAN OBJEK PADA SISTEM TERDISTRIBUSI BERBASIS CORBA

Bab 2. Tinjauan Pustaka

Database Terdistribusi. by: Ahmad Syauqi Ahsan

BAB II LANDASAN TEORI. seorang pimpinan atau manajer didalam organisasi untuk mencapai tujuan

SISTEM INFORMASI INFRASTRUKTUR DAN ARSITEKTUR

Sistem Terdistribusi. Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA SILABUS JARINGAN TERDISTRIBUSI

1. Sebutkan dan jelaskan secara singkat, apa saja komponen sistem informasi?

TRANSPORT LAYER. Oleh : Reza Chandra

LINGKUNGAN BASIS DATA

BAB III METODE PENELITIAN. ini, diantaranya adalah dengan langkah-langkah sebagai berikut :

BAB III LANDASAN TEORI

Praktikum Basis Data 2. BAB 1 : Pendahuluan

Transkripsi:

BAB X ARSITEKTUR SISTEM TERDISTRIBUSI A. Sistem Terdistribusi Hampir semua sistem berbasis computer yang besar saat ini mrupakan sistem terdistribusi ( sistem tersebar). Sitem terdistribusi adalah sistem dimana pemrosesan informasi didistribusikan pada beberapa computer dan tidak terbatas hanya pada satu mesin saja. Jelas rekayasa terdistribusi memiliki banyak kesamaan dengan rekayasa perangkat luna lainnya tetapi ada isu-isu khusus yang harus diperhitungkan ketika merancang tipe sistem ini. Perekayasa perangkat lunak harus menyadari dan memperhitungkan karena Sitem terdistribusi ini banyak digunakan. Belum lama ini kebanyakan sistem besar masih menggunakan sistem sentral yang berjalan pada satu mainframe dengan terminal-terminal yang terhubung kepadanya. Sistem tersebut bayak kelemahannya dimana terminal-terminal hanya sedikit kemampuan pemrosesannya dan semua tergantung pada computer sentral. Sampai saai ini ada tipe sistem yang utama yaitu: - Sistem Personal yang tidak terditribusi dan dirancang untuk satu workstation saja. - Sistem Embedded yang bejalan pada satu prosessor atau pada kelompok prosessor yang terintegrasi. - Sistem Terdistribusi dimana perangkat lunak sistem berjalan pada kelompok prosessor yang bekerja sama dan terintegrasi secara longgar, dengan dihubungkan oleh jaringan. Contohnya sistem ATM bank, sistem groupware, dll Menurut Coulouris et.al (1994) mengidentifikasi enam karakteristik yang penting untuk sistem terdistribusi yaitu: - Pemakain bersama sumber daya - Keterbukaan. Keterbukaan sistem adalah terbuka untuk banyak sistem operasi dan banyak vendor. - Konkurensi. Sitem terdistribusi memungkinkan beberapa proses dapat beroperasi pada saat yang sama pada berbagai computer di jaringan. Proses ini dapat (tapi tidak perlu) berkomunikasi satu dengan lainnya pada saat operasi normlnya. 111

- Skalabilitas. Sitem terdistribusi dapat diskala dengan menguprade atau menambahkan sumber daya baru untuk memenuhi kebutuhan sistem. - Toleransi kkesalahan. Sitem terdistribusi bersifat toleran terhadap beberapa kegagalan perangkat keras dan lunak dan layanan terdegradasi dapat diberikan ketika terjadi kegagalan. - Transparansi. Sitem terdistribusi adalah bersifat terbuka bagi user. Selain hal-hal tersebut ada juga kelemaham dari Sistem terdistribusi yaitu: - Kompleksitas. Sistem terdistribusi bersigat lebih kompleks daripada sistem sentral. - Keamanan. Sistem terdistribusi dapat diakses dari beberapa computer dan jalur jaringan mudah disadap, sehingga keamanan jarinagan sistem terdistribusi menjadi masalah yang besar. - Kemampuan untuk dikendalikan. Komputer yang terdapat di sistem terdistribusi bis aterdiri dari berbagai tipe yang berbeda dan mungkin dijalankan pada sistem operasi yang berbeda pula. Kesalahan pada satu mesin bisa berakibat pada yang lainnya. Sehingga harus banyak usaha untuk mengendalikannya. - Tidak dapat diramalkan. Sistem terdistribusi tidak dpat diramalkan tanggapannya. Tanggapan tergantung beban total sistem, pengorganisasian, dan beban jaringannya. Ada dua tipe generic arsitektur sistem terdistribusi yaitu: - Arsitektur Server. Sistem dianggap sebagai satu set layanan yang disediakan untuk klien. Server dan diperlakukan berbeda. - Arsitektur Objek Terdistribusi. Tidak ada perbedaan antara server dan client, sistem dapat sebagai satu set objek yang berinteraksi yang likasinya tidak relevan. Tidak ada perbedaan antara penyedia layanan dan user layanan. 112

B. Arsitektur Multiprosessor Model sistem terdistribusi yang paling sederhana adalah sistem multiprosessor dimana sistem terdiri dari sejumlah proses yang dapat berjalan pada beberapa prosessor yang terpisah. Model ini umumnya digunakan pada sistem real time yang besar. Penggunaan banyak prosessor ini berguna untuk memperbaiki kinerja dan fleksibilitas sistem. Distribusi proses ke prosessor dapat ditentukan sebelumnya atau bisa juga dikendalikan oleh dispatcher yang memutuskan proses mana yang akn dialokasikan ke masing-masing prosessor. Contoh tipe sistem ini dapat dilihat pada gambar 10.1 yang merupakan contoh model sistem control lau lintas. Satu set sensor terdistribusi mengumpulkan informasi dari aliran lalu lintas dan memproses informasi secara local sebelum mengirimnya ke ruangan control. operator mengambil keputusan dengan memakai informasi ini dan memberi instruksi ke proses control lampu liantas yang berbeda. Ada proses logika yang terpisah untuk menangani sensor ruangan control, dan lampu lalu lintas. Dan proses-proses ini berjalan pada prosesor yang terpisah. Sensor processor Traffic flow processor Traffic light control processor Sensor control process Display process Light control process Traffic flow sensors and cameras Operator consoles Gambar 10.1 Model Kontrol Lalu lintas Traffic lights Sistem perangkat lunak yang terdiri dari banyka proses tidak harus merupakan sistem terdistribusi. Memang jika tersedia lebih dari satu prosessor maka distribusi dapat diimplementasikan. 113

C. Arsitektur Server Seperti yang telah dijelaskan pada bab-bab sebelumnya model Arsitektur Cilent Server dimodelkan sebagai satu set layanan yang disediakan oleh server dan satu atau lebih client yang memakai layanan server. tidak perlu menyadari keberadaan server tetapi juga sebaliknya tidak mengetahui keberadaan klien yang lain. Tidak harus ada pemetaan 1:1 antara proses dan prosesor pada sistem. Hal tersebut bisa dilihat pada contoh gambar 10.2 dan dimana ada arsitektur fisik dengan enam kompuetr client dan dua server. Dan untuk proses logika dari gambar 10.2 adalah ditunjukkan pada gambar 10.3 c1 c2 s1 c3 c4 s4 c12 c11 Server process c5 s2 s3 c10 c9 process c6 c7 c8 GAmbar 10.2 Sistem Server c1 c2 c3, c4 CC1 CC2 CC3 s1, s2 Network s3, s4 SC2 SC1 Server computer c5, c6, c7 CC4 CC5 c8, c9 c10, c11, c12 CC6 computer Gambar 10.3 Proses Logika Arsitektur C/S 114

Perancangan arsitektur C/S harus mempertimbangkan struktur logika aplikasi yang ditunjukkan pada gambar 10.4 yang menunjukkan aplikasi dibagi tiga lapisan yaitu: - Lapisan Presentasi, yang berhubungan dengan penyajian informasi ke user dan dengan semua interaksi user. - Lapisan Pemrosesan Aplikasi, yang berhubungan dengan implementasi logika aplikasi - Lapisan Manajemen Data, yang berhubungan dengan operasi database. Arsitektur C/S yang paling sederhana disebut arsitektur C/S Two Tier, diaman aplikasi diorganisir seperti server dan satu set klien seperti pada gambar 10.5 dimana arsitektur C/S Two Tier memiliki dua bentuk yaitu: - Model Thin. Pada model ini semua pemrosesan aplikasi dan manajaemen data dilakukan pada server. Klien bertanggung jawab untuk menjalankan perangkat lunak presentasi yang biasanya hanya berbentuk interface sistem atau GUI. Kelebihan: o Biaya lebih rendah o Lebih cocok untuk model jaringan yang sederhana Kekurangan: o Menempatkan beban berat pemrosesan pada server o Ada kekuatan pemrosesan yang besar yang tersedia pada PC modern dan tidak digunakan pada client - Model Fat Pada model ini server hanya bertanggung jawab pada manajemen data. Perangkat client bertanggung jawab pada logika aplikasi dan interaksi denga user. Kelebihan: o Menggunakan kekuatan pemrosesan yang besar dan mendistribusikan pemrosesan logika aplikasi dan prsentasi pada klien o Server hanya menangani seluruh transaksi database 115

o Pendistribusian pemrosesan lebih efektif Kekurangan : o Manajemen sistemnya lebih komplek o Biayanya lebih besar Contoh dari model arsitektur C/S Two Tier dapat dilihat pada gambar 10.4 tentang jaringan ATM. Pada gambar tersebut ATM tidak berhubungan langsung dengan database nasabah, tetapi terhubung ke monitor teleprocessing. Monitor teleprocessing (TP) merupalan middleware yang mengatur komunikasi dengan client jarak jauh (remote) dan menserikan transaksi client untuk diproses oleh database. Menggunakan transaksi serial berarti bahwa sistem dapat pulih dari kesalahan tanpa merusak data sistem. ATM ATM Account server ATM Teleprocessing monitor Customer account database ATM Munculnya Java dan applet yang dapat di download secara gratis memungkinkan pengembangan sistem C/S antar model thin dan fat client. Beberapa pernagkat lunak pemrosesan aplikasi dapat didownload ke client seperti Java Applet sehingga mengurangi beban pada server. Interface User dibangun dengan web browser yang dapat menjalankan Java applet. Masalah terpenting pada arsitektur two tier C/S adalah ketiga lapisan logika harus dipetakan ke dua sistem computer. Mungkin ada masalah skalabilitas dan kinerja jika dipilih model thin client. Mungkin pila ada masalah manajemen sistem jika dipilih fat client. Untuk mengatasi masalah ini pendekatan alternative menggunakan arsitektur three tier client server (ditunjukkan pada gambar 10.5). Pada arsitektur ini tidak mesti diartikan bahwa terdapat tiga computer ynag terhubung ke jaringan. Satu computer server dapat menjalankan pemrosesan aplikasi dan manajemen data aplikasi sebagai server logika yang terpisah. Tetapi jika permintaan bertambah, pemisahan pemrosesan aplikasi dan 116

manajamen data dapat dilakukan dengan langsung dan eksekusi dilakukan pada prosesor yang terpisah. Presentation Server Application processing Server Data management Gambar 10.5 Arsitektur C/S three tier Sistem Internet banking merupakan salah satu contoh sistem arsitektur three tier C/S. Database nasabah bank menyediakan layanan manajemen data, web server menyediakan layanan aplikasi seperti fasilitas transfer uang tunai, membayar tagihan, dll. Komputer nasabah dengan browser internet merupakan client. Sistem ini mudah diskala untuk menambahkan web server baru dengan bertambahnya jumlah nasabah. HTTP interaction Web server Account service provision SQL query Database server SQL Customer account database Gambar 10.6 Arsitektur terdistribusi sistem internet banking Kelebihan sistem Three Tier C/S adalah diantaranya: o Transfer informasi antara web server dan server database optimal o Komunikasi aantara sistem-sistemtidak harus didasarkan pada standart internet, tetapi dapat menggunakan protocol komunikasi yang lebih cepat dan berada pada tingkat yang lebih rendah. o Penggunaan middleware mendukung efesien query database dalam SQL dipakai untuk menangani pengambailan informasi dari database. 117

D. Middleware Seperti yang sudah dijelaskan di bagian sebelumnya arsitektur sistem yang terdistribusi membutuhkan middleware (object request broker) untuk menangani komunikasi antar objek-objek. Pada prinsipnya, objek-objek pada sistem dapat diimplementasikan dengan bahasa pemrograman yang berbeda, dapat berjalan pada platform yang berbeda dan namanya tidak perlu diketahui semua objek lain pada sistem. Pada saat ini ada dua standar utama middleware untuk mendukung komputasi objek terdistribusi yaitu: - CORBA (Command Object Request Broker Architecture) CORBA merupakan satu set standar middleware yang dikeluarkan oleh OMG (Object Management Group). Standar CORBA mendefinisikan pendekatan yang tidak dependen mesin dan generic terhadap komputasi objek terdistribusi. Sejumlah implementasi ini tersedia untuk aplikasi sistem operasi UNIX dan Microsoft. - DCOM ( Distributed Component Object Mode) DCOM dikembangkan oleh Microsoft. Model komputasi tersditribusinya kurang umum dari model CORBA dan DCOM memberikan dukungan yang terbatas pada interoperabilitas. - RMI (Remote Method Invocation) Dikembangkan oleh Java. CORBA dikembangkan oleh OMG yang berperan dalam mendefinisikan standar untuk pengembangan berorientasi objek tetapi tidak menyediakan implementasi untuk standar ini. Visi OMG tentang sistem terdistribusi ditunjukkan pada gambar 10.7 yang mengusulkan agar aplikasi terdistribusi terbuat dari sejumlah komponen yaitu: Objek APlikasi, yang dirancang dan diimlemantasi untuk aplikasi ini. Objek Standar, Yang didifinisikan oleh OMG untuk domain khusus misalnya untuk masalah keuangan, e-commerce, kesehatan dll. LAyanan CORBA, fundamental yang menyediakan layanan komputasi terdistribusi dasar seperti direktori, manajemen sekuritas, dll. 118

Fasilitas CORBA horizontal, seperti fasilitas interface user, manajemen sistem, dll. Istilah horizontal berarti fasilitas bersifat umum untuk banyak domain aplikasi. Application objects Domain facilities Horizontal CORBA facilities Object request broker CORBA services GAmbar 10.7 CORBA application structure Standar CORBA mencakup semua aspek visi ini. ada empat elemen utama untuk standar ini yaitu: 1. Model objek untuk aplikasi ini objek CORBA merupakan encapsulasi status dengan interface yang terdefinisi dan disdeskripsikan dalam IDL (interface Definition Language). 2. Object Request Broker (ORB), yang menangani permintaan layanan objek. ORB mencari objek yang menyediakan layanan tersebut, menyediakannya untuk permintaan, mengirimkan dan mengembalikan hasilnya kepada pemohon. 3. Satu set layanan objek, yang menyediakan layanan umum dan mungkin diperlukan oleh banyak aplikasi terdistribusi. Contoh layanan ini adalh layanan direktori, layanan transaksi, 4. Satu set komponen umum, yang dibangun di atas layanan=layanan dasar yang mungin dibutuhkan oleh aplikasi. Objek CORBA memiliki identifier unik yang dinamakan Interoperable Object Reference (IOR) yang digunakan ketika satu objek meminta layanan dari yang lain. Object Request Broker (ORB) tahu mengenai objek yang meminta layanan dan interface mereka. ORB menangani komunikasi diantara objek-objek tersebut. Objek-objek 119

yang berkomunikasi tidak perlu mengetahui lokasi objek lain dan implementasinya. Karena interface mengisolasi objek dari ORB, maka perubahan implementasi objek dilakukan dengan cara yang transparan. Lokasi objek dapat berubah antara invokasi dn hal ini transparan bagi objek lainnya pada sistem tersebut. Hal ini dapat dilihat pada gambar 10.8 yang mengilustrasikan bagaimana dua objek o1 dan o2 berkomunikasi melakui ORB. Objek pemanggil (O1) memiliki IDL stub yang berhubungan dengan interface objek yang memberikan layanan yang dibutuhkan. Implementator o1 menggabungkan panggilan untuk stub ini pada implementasi objek ketika layanan dibutuhkan. IDL merupakan superset C++ segingga mudah untu mengaksesnya. Pemetaan ke IDL juga telah didefinikan untuk bahasa laian seperti ADA dan COBOL yang mendukung link ke IDL. Objek yang menyediakan layanan memiliki IDL skeleton yang berhubungan ke interface untuk aplikasi layanan. JAdi ketika layanan dipanggil melalui interface, IDL skeleton menerjemahkan panggilan ini menjadi panggilan layanan dalam bahasa implemenatsi apapun yang digunakan. Ketika metode atau prosedur telah dilaksanakan, IDL skeleton menerjemahkan hasilnya menjadi IDL sehingga dapat diakses oleh objek yang memanggil. Ketika objek menyediakan layanan ke objek lain dan menggunkan layanan yang disediakan ditempat lain, objek tersebut membutuhkan IDL skeleton dan IDL Stub. IDL stub dibutuhkan oleh setiap objek yang dipakai. o1 o2 S (o1) S (o2) IDL stub IDL skeleton Object Request Broker Gambar 10.8 Komunikasi Objek melalui ORB 120