Sabtu, 08 Juni 2013

RPC ( Remote Procedure Call ) - Client Server 4


RPC ( Remote Procedure Call ) - Client Server 4

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 dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bila client tidak tahu harus menghubungi port yang mana, client bisa me-request kepada sebuah matchmaker pada sebuah RPC port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client.

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

Kekurangan RPC
  • Tidak fleksibel terhadap perubahan:
  • Static relationship between client & server at run-time.
  • Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.

Sebagai contoh :
Alternatif lain dari socket adalah dengan menggunakan Remote Procedure Call (RPC), yang mengabstraksi interface komunikasi ke level pemanggilan procedure. Programmer tidak akan menangani socket secara langsung, dan seolah-olah memanggil prosedur lokal, padahal argumen dari prosedur lokal tersebut dipaketkan dan dikirimkan ke tujuan jarak jauh. Tapi RPC tidak bisa langsung dipakai dalam sistem objek terdistribusi. Dalam sistem objek terdistribusi, diperlukan komunikasi antara objek-objek yang ada di level program, yang berada dibanyak tempat. Oleh karena itu, sistem objek terdistribusi memerlukan suatu Remote Method Invocation (RMI). Pada sistem yang memakai RMI, sebuah objek lokal yang dinamakan stub mengurus pemanggilan method pada objek jarak jauh.

Tidak ada komentar: