RSS

RMI (Remote Method Invocation) Dan RPC (Remote Procedure Call)

RMI (Remote Method Invocation) Dan RPC (Remote Procedure Call)


RMI (Remote Method Invocation)

1. Definisi

RMI adalah sebuah tekhnik pemanggilan method remote yang lebih secara umum lebih baik dari RPC. RMI menggunakan paradigma pemrograman berorientasi obyek. 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.

2. TujuanMenyediakan fasilitas bagi programmer untuk dapat mendistribusikan objek yang digunakan pada beberapa proses yang berbeda.Dapat berjalan dalam satu mesin ataupun di beberapa mesin yang terhubung dengan jaringan.

3. Aplikasi Obyek Terdistribusi

Aplikasi RMI sering kali terdiri dari dua program terpisah yaitu server dan client.

1. Aplikasi Server

  • Membuat beberapa remote objek
  • Menyediakan referensi terhadap objek-objek tersebut sehingga dapat diakses
  • Menunggu RMI client merequest server
2. Aplikasi Client
  • Mendapatkan referensi remote ke satu atau lebih objek remote di server
  • Menjalankan method dari objek tersebut
  • Meminta pemanggilan ke beberapa remote objek berbasarkan referensi yang diterimanya.
  • RMI menyediakan mekanisme dimana server dan client berkomunikasi dan memberikan informasi secara timbal balik, aplikasi ini disebut aplikasi obyek terdistribusi.
4. Cara Kerja RMI

Dalam model ini, sebuah proses memanggil method dari objek yang terletak pada suatu host/computer remote. Dalam paradigma ini, penyedia layanan mendaftarkan dirinya dengan server direktori pada jaringan. Proses yang menginginkan suatu layanan mengontak server direktori saat runtime, jika layanan tersedia, maka referensi ke layanan akan diberikan. Dengan menggunakan referensi ini, proses dapat berinteraksi dengan layanan tsb. Paradigma ini ekstensi penting dari paradigma RPC. Perbedaannya adalah objek yang memberikan layanan didaftarkan (diregister) ke suatu layanan direktori global, sehingga memungkinkan untuk ditemukan dan diakses oleh aplikasi yang meminta layanan tersebut.



RPC ( Remote Procedure Call )



1. Definisi

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 membukasocket, lalu menunggu client yang meminta prosedur yang disediakan server. RPC masih menggunakan cara primtif dalam pemrograman yaitu menggunakan paradigma procedural programming.

2. Tujuan

RPC digunakan untuk administrasi sistem sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya darimna saja, selama sistemnya terhubung ke jaringan.

3. Socket

RPC menggunakan socket untuk berkomunikasi dengan proses lainnya.

4. Cara Kerja RPC

Tiap prosedur yang dipanggil dalam RPC, maka proses ini harus berkoneksi dengan server remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu balasan dari server dan melakukan proses kemudian selesai. Proses di atas disebut juga dengan stub pada sisi klien. Sedangkan Stub pada sisi server adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur tertentu.

5. Implementasi RPC

Untuk proses nya kurang lebih sama dengan RMI. Kalau RMI kita mengenal proxy dan skeleton, pada RPC dikenal dengan Stub( Client stub dan Server stub).



Gambar Ilustrasi Implementasi RPC



Remote Reference Modul dan Communication Modul berada pada tatanan sistem operasi.

Contoh implementasi adalah Sun Microsystems Open Network Computing (ONC) : RPC specification, XDR (eXternal Data Representation) standard, UDP atau TCP transport protocol. Xerox Courier : RPC model, Data representation standard, XNS (Xerox Network

Systems) SPP (Sequenced Packet Protocol) sbg transport protocol, Apollo s Network Computing Architecture (NCA), RPC protocol, NDR (Network Data Representation).

6. Langkah-langkah dalam RPC


  • Prosedur client memanggil client stub
  • Client stub membuat pesan dan memanggil OS client
  • OS client mengirim pesan ke OS server
  • OS server memberikan pesan ke server stub
  • Server stub meng-unpack parameter-parameter untuk memanggil server
  • Server mengerjakan operasi, dan mengembalikan hasilnya ke server stub
  • Server stub meng-pack hasil tersebut dan memanggil OS server
  • OS server mengirim pesan (hasil) ke OS client
  • OS client memberikan pesan tersebut ke client stub
  • Client stub meng-unpack hasil dan mengembalikan hasil tersebut ke client

0 comments :

Posting Komentar