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
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.
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.
http://jsi.cs.ui.ac.id/index.php/jsi/article/download/304/130
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