TUGAS 1 PEMROGRAMAN SISTEM TERSEBAR

OLEH DEWA GDE ADI MURTHI UDAYANA 0905021068 VB

JURUSAN MANAJEMEN INFORMATIKA FAKULTAS TEKNIK DAN KEJURUAN

Sebaliknya untuk sebuah kependudukan dimana seseorang akan pindah dari desa A ke desa B. Semua lokasi akan menjalankan software DBMS terdistribusi yang sama dan masing-masing lokasi akan mengetahui keberadaan lokasi yang lainnya. Jika dibangun dari awal sebuah basis data terdistribusi yang mungkin dapat mencapai . nama_desa. alamat. Contoh Basis Data terdistribusi Pada SI Kependudukan Misalkan sebuah daerah terdiri atas empat desa masing-masing desa memiliki komputer yang menangani data kependudukan pada desa. nama_desa) Lokasi yang mempunyai tentang menangani skema-desa: Skema – desa = (jumlah_penduduk. lokasi akan berbagi skema global. Orang tersebut meminta KTP baru di desa B. Pada sistem basis data terdistribusi yang ideal. Masing-masing desa menangani skema kependudukan: skema – kependudukan = (nomor_ktp.UNIVERSITAS PENDIDIKAN GANESHA SINGARAJA 2011 SOAL : Sebutkan dan jelaskan contoh-contoh dari masing-masing komponen sistem tersebar! A. karena yang harus diakses terletak pada dua lokasi berbeda. lokal dan global pada satu daerah adalah menambah data penduduk pada sebuah desa. Masing-masing computer merupakan sebuah lokasi kemudian ada satu lokasi yang menangani tentang data kependudukan semua desa. Jika penambahan dilakukan di desa maka ini dianggap lokal jika tidak dianggap global. Penerapan sistem terdistribusi dari segi basis data : 1. kota) Contoh untuk menggambarkan perbedaan antara dua tipe kependudukan.

Pada awalnya. Namun . adalah suatu sistem yang terbentuk dari beberapa harddisk/drive. Sistemnya adalah menyalin isi sebuah harddisk ke harddisk lain dengan tujuan: jika salah satu harddisk rusak secara fisik. n > 1). kita biasa membuat beberapa partisi dalam satu harddisk. digunakan untuk membentuk sebuah partisi yang sangat besar dari beberapa harddisk dengan biaya yang efisien. RAID 0 Juga dikenal dengan modus stripping. RAID RAID. Sistemnya adalah menggabungkan kapasitas dari beberapa harddisk.tujuan di atas. Redundant Array of Inexpensive(Independent) Disks. RAID 2 RAID 2. RAID 3 . Karena itu. Ketiga harddisk terakhir digunakan untuk menyimpan hamming code dari hasil perhitungan tiap bit-bit yang ada di harddisk lainnya. Membutuhkan minimal 2 harddisk.dalam kenyataannya basisdata terdistribusi harus dibuat dengan menggabungkan beberapa sistem basis data yang sudah ada. Sehingga secara logikal hanya "terlihat" sebuah harddisk dengan kapasitas yang besar (jumlah kapasitas keseluruhan harddisk). dengan RAID. jumlah harddisk yang dibutuhkan adalah minimal 5 (n+3. B. juga menggunakan sistem stripping. Penerapan sistem terdistribusi dari segi hardware : 1. maka data tetap dapat diakses dari harddisk lainnya. kita dapat membuat satu partisi dari beberapa harddisk. Nah. RAID 1 Biasa disebut dengan modus mirroring. Sistem semacam ini kadang disebut sistem multi basisdata atau sistem basisdata teridstribusi heterogen. masing-masing dengan skemanya sendiri dan mungkin menjalankan DBMS berbeda. Secara sederhana. Membutuhkan minimal 2 harddisk. sehingga data menjadi lebih reliable. RAID 0. Namun ditambahkan tiga harddisk lagi untuk pariti hamming.

RAID 4 Sama dengan sistem RAID 3. Karena itu. RAID 6 Secara umum adalah peningkatan dari RAID 5. beberapa business object disimpan.. COM+ COM+ adalah suatu teknologi middlware yang merupakan solusi microsoft untuk membuat application server atau yang sering disebut sebagai middle-tier. Penerapan sistem terdistribusi dari segi software : 1. namun hanya ditambahkan sebuah harddisk lagi untuk parity. COM+ menggunakan sebuah protocol yang bernama Remote Procedure Call (RPC) untuk mengeksekusi method- . Kebutuhan harddisk minimalnya juga sama. jumlah harddisk yang dibutuhkan adalah minimal 3 (n+1 . juga menggunakan sistem stripping. n >1). maka kerusakan dua buah harddisk pada saat yang bersamaan masih dapat ditoleransi. Juga menggunakan harddisk tambahan untuk reliability. maka hal ini masih dapat ditoleransi dan tidak mengakibatkan kerusakan data di harddisk bersistem RAID 6. bukan bit. n > 1). yakni dengan penambahan parity menjadi 2 (p+q). RAID 5 RAID 5 pada dasarnya sama dengan RAID 4. Yakni. Kebutuhan harddisk minimalnya juga sama. Hal ini dilakukan untuk mempercepat akses dan menghindari bottleneck yang terjadi karena akses harddisk tidak terfokus kepada kumpulan harddisk yang berisi data saja. Misalnya jika sebuah harddisk mengalami kerusakan. namun menggunakan parity dari tiap block harddisk. tidak menggunakan harddisk khusus untuk menyimpan paritinya. Di balik layar. 3 (n+1 . n > 1). namun paritinya tersebut disebar ke seluruh harddisk. Harddisk terakhir digunakan untuk menyimpan parity dari hasil perhitungan tiap bit-bit yang ada di harddisk lainnya. saat proses pertukaran harddisk tersebut terjadi kerusakan lagi di salah satu harddisk yang lain. n >1). Dengan adanya penambahan pariti sekunder ini. C. COM+ memungkinkan penggunaan objek-objek yang ada lintas jaringan komputer oleh aplikasi client. namun dengan pariti yang terdistribusi. 3 (n+1 .RAID 3. Pada middle-tier inilah. Sehingga jumlah harddisk minimalnya adalah 4 (n+2 .

Keandalan COM+ telah teruji sejak lama sebagai alternatif dalam membangun sistem distibusi dan transaksi. tapi bisa dibeberapa server. sehingga memudahkan dalam hal developing. Distributed application adalah software aplikasi yang terdiri dari komponen-komponen yang terletak tidak hanya di satu server. COM+ Merupakan hasil pengembangan dari komponen COM dan MTS. . COM+ menyediakan service berbasis enterprise yang didasarkan pada Component Object Model (COM) untuk membangun sistem distribusi.method yang berada di dalamnya lintas proses dan lintas batasan host. sistem operasi. Jadi. dan database server terhadap teknologi client-server yang akan dibuat. Komponen-komponen tersebut berinteraksi satu sama lain menggunakan infrastruktur yang disediakan oleh MTS/COM+. Penerapan sistem terdistribusi dengan arsitektur yang menggunakan COM+ ini dapat memberikan dukungan dalam hal pelayanan vendor programming tools. Bentuk arsitektur COM+ dapat dilihat pada gambar berikut ini : Microsoft Transaction Server (MTS) atau juga populer dengan COM+ ini adalah produk microsoft yang pada dasarnya menyediakan infrastruktur untuk developer dalam mengembangkan distributed application.

misalnya CORBA. 30. Mandriva. aplikasi untuk partisi dan disk cloning yang mirip dengan Symantec Ghost® DRBL menggunakan PXE/etherboot. Fedora. Red Hat. Hal ini berbeda dengan sistem RMI lainnya. "DRBL" tidak akan menyentuh client harddisk. Penerapan sistem tersebar dari segi prosedur : RMI (Remote Method Invocation) adalah cara programmer Java untuk membuat program aplikasi Java to Java yang terdistribusi. Jika DRBL server sudah siap. Ubuntu. NFS. DRBL termasuk clonezilla. DRBL memungkinkan lingkungan diskless atau sistemless di sisi mesin client. Bayangkan menginstall linux di 40. . dan NIS untuk memberikan layanan kepada mesin client oleh karena itu tidak perlu kita menginstalasi Linux di masing-masing mesin client satu per satu. Java RMI yang ada pada bahasa Java telah didesain khusus sehingga hanya bisa bekerja pada lingkungan Java.2. DRBL dapat bekerja di Debian. DRBL memberikan banyak flexibilitas saat implementasi Linux. yaitu stub pada sisi klien (berupa proxy). CentOS dan SuSE. yaitu : 1.Sistem RMI terdiri atas tiga layer/lapisan. mesin client dapat booting melalui PXE/etherboot (diskless). atau 10 client satu per satu! DRBL memungkinkan mengkonfigurasi semua client komputer dengan cara menginstalasi dari satu server saja. dan begitu juga sebaliknya. yang biasanya didesain untuk bekerja pada lingkungan yang terdiri dari banyak bahasa dan heterogen. Hal ini menjadi menarik pada saat implementasi Linux dimana user kadang kala masih menginginkan booting ke mesin Windows dan menjalankan beberapa aplikasi yang hanya tersedia di Windows. sistem operasi lain (seperti Windows) yang terinstalasi di mesin client tidak akan berubah. solusi open source untuk memanage implementasi system operasi linux di banyak client. sehingga program dari server bisa menjalankan method di komputer klien. oleh karenanya. Program-program yang menggunakan RMI bisa menjalankan metode secara jarak jauh. D. dan skeleton pada sisi server. DRBL menggunakan sumber daya hardware yang terdistribusi dan memungkinkan client untuk mengakses secara penuh hardware lokal. Pemodelan objek pada CORBA tidak boleh mengacu pada bahasa tertentu. stub/skeleton layer. DRBL (Diskless Remote Boot in Linux) DRBL (Diskless Remote Boot in Linux) adalah free software.

Sebuah klien yang menjalankan method pada remote server object sebenarnya menggunakan stub atau proxy yang berfungsi sebagai perantara untuk menuju remote server object tersebut. transport layer. yaitu tiap layer bersifat independen terhadap layer lainnya. remote reference layer. panggilan tersebut diteruskan melalui remote reference layer. Hubungan antara layer-layer tersebut dapat dijelaskan pada gambar berikut : Klien Serve Aplikasi Sistem RMI Stub Remote Reference Layer Stub Skeleton Skeleton Transport layer Sebuah remote method invocation dari klien ke remote server object akan melalui layerlayer pada sistem RMI dari layer transport pada sisi klien ke layer transport pada sisi server. Jawaban. yaitu set up koneksi. implementasi transport yang digunakan RMI adalah yang berbasis TCP (menggunakan Java socket). Batas antar masing-masing layer disusun oleh interface dan protokol tertentu. Layer application berada di atas sistem RMI. tapi bisa digantikan dengan menggunakan UDP. pengurusannya dan remote object tracking. Stub dibuat dengan menggunakan kompiler rmic. dan bisa diganti oleh implementasi alternatif tanpa mengganggu layer lainnya. Supaya sebuat panggilan method tersebut bisa sampai di remote object. Skeleton untuk remote object ini akan meneruskan panggilan ke kelas remote object implementation yang menjalankan method yang sebenarnya. Sebagai contoh. atau return value dari method tersebut akan dikirim melalui skeleton. yaitu perilaku remote reference (misalnya pemanggilan kepada suatu objek) 3.2. reference ke remote object sebenarnya merupakan reference ke stub lokal. remote reference layer dan transport layer pada sisi . Stub ini adalah implementasi dari remote interface dari sebuah remote object. Panggilan tersebut sebenarnya diteruskan ke skeleton yang berada di sisi server. dan meneruskan panggilan ke server object melalui remote reference layer. Pada sisi klien.

bisa mengatur indeks tampilan pada Projector yang berlangsung pada komputer mahasiswa. Setelah itu. maupun berupa aplikasi. . Pada paket Whiteboard. baik dosen maupun mahasiswa. kelas-kelas implementasi dari remote interface tesebut (implementation class). dan stub pada sisi klien. yang berfungsi untuk membuat klien me-load stub yang belum ada di komputernya. Server juga bisa menjadi klien dari suatu remote object. Dengan RMI. Sedangkan pada Projector. sebagai klien. interface WhiteboardClientManifest ini adalah remote interface untuk klien. program yang dijalankan di komputer klien bisa berupa applet. Program RMI memerlukan remote interface. Sedangkan pada server dijalankan program WhiteboardServer Implementation yang berupa implementasi dari interface WhiteboardServer. WhiteboardServer juga merupakan remote interface. sedangkan penggunaan RMI dilakukan oleh kelas Whiteboard Client Manifest Implementation. Stub mengimplementasi remote interface yang sama dengan yang diimplementasikan oleh remote object. server akan mengeluarkan output berupa hasil percakapan antar pengguna kepada semua komputer klien. sehingga komputer klien bisa menjalankan method-method tertentu di komputer server. lalu melalui transport layer. Whiteboard Client Manifest Implementation dan WhiteboardServer Implementation adalah implementation classes. ke komputer server. RMI digunakan untuk program-program Chat. RMI digunakan untuk memasukkan input dari para pengguna.rmi. Dengan menggunakan RMI. sehingga bisa diakses oleh klien. Teknik dalam RMI salah satunya adalah dynamic stub loading. Remote interface harus meng-extend interface java. Dalam konsep RMI. dan program rmiregistry yang sedang dijalankan di komputer server (rmiregistry terdapat dalam paket JDK). Dalam program Chat. Kelas WhiteboardClient adalah tampilan yang dimunculkan pada komputer klien. Whiteboard dan Projector. yang berfungsi sebagai klien lainnya. Implementation class merupakan kelas yang mengimplementasikan remote interface. RMI digunakan agar dosen.Remote.rmi. komputer klien bisa memanggil remote object yang berada di server. penggunaan RMI terletak pada pengiriman graphics dan image antara komputer server dan klien.klien. Pada Whiteboard. Setiap method pada remote interface harus meng-throw java.RemoteException. Kelas Whiteboard Client Manifest Implementation merupakan kelas yang mengimplementasikan interface WhiteboardClientManifest. Program WhiteboardServer Implementation ini bersifat public. remote reference layer.

diperlukan pembuatan dan pemasangan sebuah security manager.io. Selain itu implementation class juga perlu membuat dan menjalankan Security Manager. mengambil referensi ke remote-object. RMI menyediakan registry yang bisa mem-bind suatu URL ke remote object. Tambahan lagi. RMI akan membuat referensi ke stub dari remote object dengan referensi yang ditentukan oleh argumen kedua dari perintah Naming. RMI tidak bisa digunakan karena kelas-kelas RMI tidak akann diijinkan untuk di-load. argumen ke-2).rebind(URL. dan seterusnya menjalankan method pada objek tersebut. Pada method main di implementation class. Bentuk atau format dari URL tersebut adalah : //host/nama_object. Biasanya referensi diambil dengan cara dijadikan parameter dari suatu remote method. Untuk remote objects. . suatu instance dari remote object harus diciptakan. Agar komputer klien bisa menjalankan method di remote object. klien sebelumnya harus membuat referensi kepada remote object tersebut. sebuah remote object akan siap untuk mendengar method-method panggilan dari komputer klien. dan nama_object harus berupa nama berbentuk string. asal object-object tersebut mengimplementasi interface java. Dalam method main. implementation class juga harus me-register atau mendaftarkan paling tidak sebuah remote object pada RMI remote object registry. Implementation class juga menyediakan implementasi dari method yang bisa dijalankan secara remote. sekaligus membuat instance dari remote object tersebut. setelah konstruktor dipakai untuk menciptakan instance.Serializable. penyampaiannya dilakukan dengan pass by reference. yang bisa berupa RMISecurityManager. dan sebagai hasilnya. Pada program implementation class. Referensi untuk suatu remote object sebenarnya merupakan referensi untuk sebuah stub. komputer-komputer klien bisa mencari nama objek tersebut. Untuk keperluan bootstrapping. Konstruktor akan menghasilkan remote object. ataupun diambil dari return value suatu remote method.Implementation class perlu mendefinisikan konstruktor untuk remote object. Setelah suatu remote object diregistrasi di server. ataupun security manager yang sebelumnya telah didefinisikan dulu secara khusus oleh sang programmer. Security manager ini diperlukan untuk menjaga agar kelas-kelas yang dipakai tidak melakukan operasi-operasi yang bisa mengancam keamanan sistem. Jika dalam method main tidak terdapat security manager. semua argumen untuk remote method dan semua return value dari remote method bisa berupa object bertipe apa saja. yaitu proxy pada sisi klien untuk remote object.

Contoh implementasi dari RMI di antaranya :  Perusahaan programming Avitek yang berlokasi di Amerika Serikat. telah membuat program sistem terdistribusi untuk klien mereka. Protokol Object Serialization digunakan unntuk meneruskan panggilan klien dan mentransfer data. Protokol HTTP digunakan untuk mem-"POST" sebuah remote method invocation dan mengembalikan data keluaran untuk situasi ketika komputer klien dan server dipisahkan oleh firewall. Protokol yang dipakai oleh RMI adalah Java Object Serialization dan HTTP. jadi sewaktu klien melakukan pencarian ke remote object yang ada ada di registry di server. Tujuan dari proyek ini adalah untuk membuat dan mendukung pembuatan dari bukti nyata untuk konsep penggunaan Java yang dikombinasikan dengan database. membuat program sistem accounting untuk intranet yang memungkinkan klien untuk meng-update dan mengubah data dengan mudah. komputer server akan melakukan referensi ke stub yang berada di komputer klien.  Perusahaan CEAS Consulting yang menyediakan jasa custom re-engineering dan otomasi proses untuk perusahaan-perusahaan manufakturing dan teknik. Gambaran program mereka adalah seperti berikut: .Objek implementasi yang ada di komputer klien (remote implementation objects) akan selalu berada di komputer klien.

jadi sewaktu klien melakukan pencarian ke remote object yang ada ada di registry di server. komputer-komputer klien bisa mencari nama objek tersebut. Objek implementasi yang ada di komputer klien (remote implementation objects) akan selalu berada di komputer klien. dan seterusnya menjalankan method pada objek tersebut. RMI akan membuat referensi ke stub dari remote object dengan referensi yang ditentukan oleh argumen kedua dari perintah Naming. komputer server akan melakukan referensi ke stub yang berada di komputer klien. Tujuan dari proyek ini adalah untuk membuat dan mendukung pembuatan dari bukti nyata untuk konsep penggunaan Java yang dikombinasikan dengan database. argumen ke-2).rebind(URL. • Perusahaan CEAS Consulting yang menyediakan jasa custom reengineering dan otomasi proses untuk perusahaan-perusahaan manufakturing dan teknik. Contoh implementasi dari RMI di antaranya : • Perusahaan programming Avitek yang berlokasi di Amerika Serikat. Setelah suatu remote object diregistrasi di server. telah membuat program sistem terdistribusi untuk klien mereka. Protokol Object Serialization digunakan unntuk meneruskan panggilan klien dan mentransfer data.tersebut adalah : //host/nama_object. Gambaran program mereka adalah seperti berikut: . Protokol HTTP digunakan untuk mem-"POST" sebuah remote method invocation dan mengembalikan data keluaran untuk situasi ketika komputer klien dan server dipisahkan oleh firewall. Protokol yang dipakai oleh RMI adalah Java Object Serialization dan HTTP. dan nama_object harus berupa nama berbentuk string. membuat program sistem accounting untuk intranet yang memungkinkan klien untuk meng-update dan mengubah data dengan mudah. mengambil referensi ke remote-object.

Sign up to vote on this title
UsefulNot useful