Differenz zwischen RPC und RMI Unterschied zwischen

Anonim

ausgeführt werden RPC vs RMI

RPC (Remoteprozeduraufruf) und RMI (Remotemethodenaufruf) sind zwei Mechanismen, die es dem Benutzer ermöglichen, Prozesse aufzurufen oder aufzurufen, die auf einem anderen Computer als dem vom Benutzer verwendeten ausgeführt werden. Der Hauptunterschied zwischen den beiden ist der Ansatz oder das verwendete Paradigma. RMI verwendet ein objektorientiertes Paradigma, bei dem der Benutzer das Objekt und die Methode des Objekts, das er aufrufen muss, kennen muss. Im Gegensatz dazu ist RPC nicht objektorientiert und behandelt keine Objekte. Es ruft vielmehr bestimmte Subroutinen auf, die bereits eingerichtet sind.

RPC ist ein relativ altes Protokoll, das auf der C-Sprache basiert und somit sein Paradigma erbt. Mit RPC erhalten Sie einen Prozeduraufruf, der einem lokalen Anruf ähnelt. RPC behandelt die Komplexität, die mit dem Weiterleiten des Anrufs von dem lokalen zu dem Remotecomputer verbunden ist. RMI macht genau das Gleiche; die Komplexität des Weiterleitens des Aufrufs vom lokalen zum entfernten Computer behandeln. Statt jedoch einen prozeduralen Aufruf zu übergeben, übergibt RMI einen Verweis auf das Objekt und die Methode, die aufgerufen wird. RMI wurde von Java entwickelt und verwendet seine virtuelle Maschine. Seine Verwendung ist daher exklusiv für Java-Anwendungen zum Aufrufen von Methoden auf Remote-Computern.

Am Ende sind RPC und RMI nur zwei Mittel, um exakt das Gleiche zu erreichen. Es kommt darauf an, welche Sprache Sie verwenden und welches Paradigma Sie gewohnt sind. Die Verwendung der objektorientierten RMI ist der bessere Ansatz zwischen den beiden, insbesondere bei größeren Programmen, da sie einen saubereren Code bietet, der leichter zu finden ist, wenn einmal etwas schief läuft. Die Verwendung von RPC wird immer noch weitgehend akzeptiert, insbesondere wenn eines der alternativen Fernprozedurprotokolle keine Option ist.

Zusammenfassung:

1. RMI ist objektorientiert, während RPC nicht

2 ist. RPC ist C-Basen, während RMI nur Java

3 ist. RMI ruft Methoden auf, während RPC Funktionen

4 aufruft. RPC ist antiquiert, während RMI die Zukunft ist