RPC
(Remote Procedure Call) merupakan suatu protokol yang menyediakan suatu
mekanisme komunikasi antar proses yang mengijinkan suatu program untuk berjalan
pada suatu komputer tanpa terasa adanya eksekusi kode pada sistem yang jauh (remote
system). Protokol RPC digunakan untuk membangun aplikasi klien-server yang
terdistribusi.
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.
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.
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 secaradefault 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
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) sebagai transport protocol, Apollo?s Network
Computing Architecture (NCA), RPC protocol, NDR (Network Data Representation).
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 soket,
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.
Kurangnya
location transparency
- Misalnya premrogram hanya boleh melakukan pass by value,
bukan pass by
reference.
- Komunikasi hanya antara 1 klien & 1 server
(one-to-one at a time).
- Komunikasi antara 1 klien & beberapa server memerlukan
beberapa koneksi yang
terpisah.
Please visit our web:
BalasHapusUHAMKA
THank you for nice information