Senin, 17 Maret 2014

Konsep Objek Terdistribusi dan Object Interface.

Konsep Objek Terdistribusi dan Object Interface.

Sistem komputer terdistribusi adalah sebuah sistem yang memungkinkan aplikasi komputer beroperasi secara terintegrasi pada lebih dari satu lingkungan yang terpisah secara fisis. Ciri khas sistem komputer terdistribusi adalah heterogenitas dalam berbagai hal: perangkat keras, sistem operasi, dan bahasa pemrograman. Adalah tidak mungkin untuk mengembangkan sistem terdistribusi yang homogen secara paksaan, karena secara alamiah sistem komputer terdistribusi tumbuh dari lingkungan yang heterogen. Kata kunci dalam menjembatani perbedaan-perbedaan yang muncul adalah interoperabilitas (interoperability).
Tujuan utama suatu sistem terdistribusi adalah menghubungkan pengguna komputer dengan sumber dari yang transparan, terbuka dan memiliki skalabilitas. Dengan kata lain, sistem proses terdistribusi adalah sistem yang lebih baik dan kuat dibandingkan kombinasi sistem stand alone.
Objek Terdistribusi :
·         COBRA :
      Pada tahun 1989 object Management group (0MG) dibentuk melakukan standarisasi terhadap arsitektur aplikasi menggunakan obyek terdistribusi sehingga aplikasi yang dibuat oleh sebuah vendor dapat birenteraksi dengan vendor Iainnya dengan berbagai perarigkat jaringan dan sistem operasi. Standar yang dikePuarkan oleh 0MG disebut
Common Object RequestBroker Architektur (CQRBA). Spesifikasi CORBA ini berisi sebuah spesifikasi infrastruktur yang disebut Object request Broker (ORB) yang memungkinkan aplikasi klien untuk dapat berkomunikasi dengan obyek secara remote, yang meliputi antarmuka program, protokol komunikasi don model obyek atau layanan yang memungkinkan untuk saling berkomunikasi dalam berbagai platform.
CORBA menggunakan interface definition language (IDL) untuk menunjukkan interface atau antarmuka yang dapat digunakan oleh program atau obyek lain.
 Kelebihan CORBA:
1                  - Programer dapat dengan mudah menulis aplikasi yang mampu bekerja secara independent antar platform      dan jaringan.
          - Memberikan kemampuan untuk mengintegrasi software aplikasi yang berbeda,tanpa harus tergantung            pada fasilitas komunikasi tingkat bawah
          -  Bekerja secara baik dengan beberapa midleware-midleware yang ada,termasuk microsoft distributo
             sistem(DCOM) .suport penggunaan secara statis maupun dinamis
4         - Memberikan ekstensi optional untuk area yang tidak bisa dijamah oleh core aplikasi.

·         COM :

Component Object Model (COM) adalah teknologi ciptaan Microsoft untuk memungkinkan komunikasi antaraplikasi. Teknologi ml sudah disediakan untuk beberapa platform tetapi kebanyakan untuk platform windows.

·         Dcom :
Distributed Component Object Model (DCOM), dibandingkan dengan COM memiliki kelebihan mampu untuk terdistribusi dan berkomunikasi antar komponent melalui jaringan.
DCOM juga bisa bekerja dalam sebuah jaringan dengan enterprise atau jaringan yang lain seperti internet. Ini menggunakan TCP/IP dan Hypertext Tranfer Protocol. DCOM secara umum hampir sama dengan CORBA dalam terminologinya penyedia layanan pendistribusian. DCOM menggunakan mekanisme RPC untuk transparansi pengiriman dan penerimaan informasi diantara komponen COM (seperti, client dan servers) dalam jaringan yang sama. DCOM pertama kali hadir tahun 1995 dengan initial release di WindowsNT

·         RMI (Remote Method Invocation).
Merupakan sebuah teknik pemanggilan method remote yang lebih secara umum lebih baik daripada RPC. RMI menggunakan paradigma pemrograman berorientasi obyek (Object Oriented Programming). RMI memungkinkan kita untuk mengirim obyek sebagai parameter dari remote method. Dengan dibolehkannya program Java memanggil method pada remote obyek, RMI membuat pengguna dapat mengembangkan aplikasi Java yang terdistribusi pada jaringan.
RMI menyediakan mekanisme dimana server dan client berkomunikasi danmemberikan informasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi objek terdistribusi. Dalam RMI, semua informasi tentang satu pelayanan server disediakan dalam suatu definisi remote interface. Dengan melihat pada definisi interface, seorang pemrogram dapat memberitahukan method apa yang dapat dikerjakan oleh server, meliputi data apa yang diterima dan data apa yang akan dikirim sebagai tanggapan.
Definisi yang ada pada remote interface menentukan karakteristik methods yang disediakan server yang dapat dilihat oleh client. Client programmer harus dapat mengetahui methods apa yang disediakan server dan bagaimana memanggilnya langsung dengan melihat ke remote interface. Client mendapatkan referensi ke remote object melalui RMI registry.


Contoh RMI dikenal seperti Proxy dan Skeleton.

Membangun suatu aplikasi terdistribusi menggunakan RMI meliputi 6 langkah. Keenam langkah tersebut adalah:
1. Mendefinisikan remote interface
2. Implementasi remote interface dan server
3. Pengembangan client (atau applet) yang menggunakan remote interface
4. Mengkompilasi source files dan mem-buat stub and skeletons
5. Memulai (start) RMI registry
6. Menjalankan server dan client

Keuntungan RMI
•  Salahsatu keuntungan RMI adalah kemampuan untuk download bytecodes (code) dari suatu object’s class, jika class tsb tidak terdefinisikan di VM-nya penerima.
•  Type-type dan metode-metode object (class), yang terletak dalam satu VM, dapat dikirim ke VM yang lain, yang mungkin saja remote.
•  Sifat-sifat object yang terkirim ini tidak berubah sama sekali

Kelemahan RMI

proses pembukaan socket yang kadang-kadang tidak dapat diimplementasikan lewat jaringan internet, tapi hal ini bisa diatasi dengan menggunakan Spring HttpInvoker, sama persis dengan RMI tapi lewat protokol HTTP.

Referensi :

Link :




1 komentar:

  1. permisi gan, saya ada sedikit tulisan mengenai protokol WebSocket yang saya terapkan kedalam beberapa bahasa pemrograman berikut: http://datacomlink.blogspot.co.id/2015/11/implementasi-server-websocket-rfc-6455.html ditunggu feedbacknya gan, semoga menambah wawasan bersama, terima kasih gan.. :D

    BalasHapus