Kamis, 28 April 2011

RPC dan RMI

1.     RPC ( Remote procedural call)

Remote Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah server harus menyediakan layanan remote procedure. Pendekatan yang dilakukan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bilaclient tidak tahu harus menghubungi port yang mana, client bisa me- requestkepada sebuah matchmaker pada sebuah RPC port yang tetap. Matchmakerakan memberikan port apa yang digunakan oleh prosedur yang diminta client.
RPC masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak remote procedure. RPC menggunakan socketuntuk berkomunikasi dengan proses lainnya. Pada sistem seperti SUN, RPC secara default sudah ter- install kedalam sistemnya, biasanya RPC ini digunakan untuk administrasi sistem. Sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya dari mana saja, selama sistemnya terhubung ke jaringan.

ü  Implementasi RPC

a.       Sun Microsystems Open Network Computing (ONC) : RPC specification, XDR (eXternal Data Representation) standard, UDP atau TCP transport protocol.
b.      Xerox Courier : RPC model, Data representation standard, XNS (Xerox Network Systems) SPP (Sequenced Packet Protocol) sebagai transport protocol, Apollo’s Network Computing Architecture (NCA), RPC protocol, NDR (Network Data Representation).

ü  Kelebihan RPC

a.       Relatif mudah digunakan
b.      Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti soket, marshalling & unmarshalling.
c.       Robust (Sempurna)
d.      Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission-critical application yg memerlukan scalability, fault tolerance, & reliability.

ü  Kekurangan RPC

a.       Tidak fleksibel terhadap perubahan
b.      Static relationship between client & server at run-time.
c.       Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.
d.      Kurangnya location transparency
e.       Misalnya premrogram hanya boleh melakukan pass by value, bukan pass by reference.
f.       Komunikasi hanya antara 1 klien & 1 server (one-to-one at a time).
g.       Komunikasi antara 1 klien & beberapa server memerlukan beberapa koneksi yg terpisah.

2.     RMI (Remote Method Invocation)

RMI atau Remote Method Invocation adalah pustaka kelas (library) sekaligus API (application programming interface) dalam bahasa pemrograman Java yang memungkinkan objek-objek yang berjalan di sebuah JVM (Java Virtual Machine) melakukan pemanggilan metode milik objek yang berada di dalam JVM lain yang terletak di mesin lainnya.
Keuntungan RMI :
  • Salah satu 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.

Tidak ada komentar:

Posting Komentar