Perbedaan Antara RPC dan RMI

Daftar Isi:

Perbedaan Antara RPC dan RMI
Perbedaan Antara RPC dan RMI

Video: Perbedaan Antara RPC dan RMI

Video: Perbedaan Antara RPC dan RMI
Video: Bagaimana Sebenarnya Pasar Saham Bekerja? 2024, Oktober
Anonim

RPC vs RMI

Perbedaan mendasar antara RPC dan RMI adalah bahwa RPC adalah mekanisme yang memungkinkan pemanggilan prosedur pada komputer jarak jauh sedangkan RMI adalah implementasi RPC di java. RPC adalah bahasa yang netral tetapi hanya mendukung tipe data primitif untuk diteruskan. Di sisi lain, RMI terbatas pada Java tetapi memungkinkan objek yang lewat. RPC mengikuti konstruksi bahasa prosedural tradisional sementara RMI mendukung desain berorientasi objek.

Apa itu RPC?

RPC, yang merupakan singkatan dari Remote Procedure Call, adalah jenis komunikasi antar-proses. Ini memungkinkan pemanggilan fungsi dalam proses lain yang berjalan di komputer lokal atau komputer jarak jauh. Konsep ini muncul sejak lama pada tahun 1980, tetapi implementasi terkenal pertama terlihat di Unix.

RPC melibatkan beberapa langkah. Klien melakukan panggilan prosedur di komputer lokal seperti biasa. Modul yang disebut rintisan klien mengumpulkan argumen dan membuat pesan dan meneruskan ke sistem operasi, Sistem operasi melakukan panggilan sistem dan mengirimkan pesan ini ke komputer jarak jauh. Sistem operasi di server mengumpulkan pesan dan meneruskan ke modul di server yang disebut rintisan server. Kemudian rintisan server memanggil prosedur di server. Akhirnya, hasilnya dikirim kembali ke klien.

Keuntungan menggunakan RPC adalah tidak tergantung pada detail jaringan. Pemrogram hanya perlu menentukan secara abstrak sementara sistem operasi akan menjaga detail jaringan internal. Jadi ini membuat pemrograman lebih mudah dan memungkinkan RPC bekerja di jaringan apa pun meskipun ada perbedaan fisik dan protokol. Implementasi RPC hadir di semua sistem operasi utama seperti Unix, Linux, Windows dan OS X. RPC umumnya netral bahasa sehingga membatasi tipe data ke yang paling primitif karena mereka harus umum untuk semua bahasa. Pendekatan dalam RPC tidak berorientasi objek, tetapi merupakan mekanisme prosedural tradisional seperti di C.

Perbedaan Antara RPC dan RMI
Perbedaan Antara RPC dan RMI
Perbedaan Antara RPC dan RMI
Perbedaan Antara RPC dan RMI

Apa itu RMI?

RMI, singkatan dari Remote Method Invocation, adalah API (Application Programming Interface) yang mengimplementasikan RPC di java untuk mendukung sifat berorientasi objek. Ini memungkinkan pemanggilan metode Java pada mesin Virtual Java lain yang berada di komputer yang sama atau komputer jarak jauh. Keterbatasan RMI adalah bahwa hanya metode Java yang dapat dipanggil, tetapi ini datang dengan keuntungan bahwa objek dapat diteruskan sebagai argumen dan mengembalikan nilai. Ketika kinerja dianggap RMI lebih lambat dari RPC karena keterlibatan bytecode pada mesin Java Virtual, tetapi RMI sangat ramah programmer, dan sangat mudah digunakan.

RMI menggunakan mekanisme keamanan bawaan di Java dan juga memberikan pabrik soket yang memungkinkan penggunaan protokol lapisan transport kustom non-TCP. Selain itu, RMI menyediakan metode untuk mem-bypass firewall. Langkah-langkah yang terjadi di RMI mirip dengan RPC. Implementasi RMI menjaga detail jaringan internal di mana programmer tidak perlu khawatir tentang mereka.

Apa perbedaan antara RPC dan RMI?

• RPC adalah bahasa netral sementara RMI terbatas pada Java.

• RPC bersifat prosedural seperti di C, tetapi RMI berorientasi objek.

• RPC hanya mendukung tipe data primitif sementara RMI mengizinkan objek untuk dilewatkan sebagai argumen dan mengembalikan nilai. Saat menggunakan RPC, pemrogram harus membagi objek gabungan apa pun ke tipe data primitif.

• RMI mudah untuk memprogram RPC tersebut.

• RMI lebih lambat dari RPC karena RMI melibatkan eksekusi bytecode java.

• RMI memungkinkan penggunaan pola desain karena sifat berorientasi objek sementara RPC tidak memiliki kemampuan ini.

Ringkasan:

RPC vs RMI

RPC adalah mekanisme netral bahasa yang memungkinkan pemanggilan prosedur pada komputer jarak jauh. Namun, fitur netral bahasa membatasi tipe data yang diteruskan sebagai argumen dan mengembalikan nilai ke tipe primitif. RMI adalah implementasi RPC di Java dan juga mendukung objek lewat, membuat hidup programmer lebih mudah. Keuntungan dari RMI adalah dukungan desain berorientasi objek, tetapi keterbatasan Java adalah kelemahannya.

Direkomendasikan: