Inhaltsverzeichnis:
- Definition - Was bedeutet Remote Method Invocation (RMI)?
- Techopedia erklärt Remote Method Invocation (RMI)
Definition - Was bedeutet Remote Method Invocation (RMI)?
Remote Method Invocation (RMI) ist eine verteilte Objekttechnologie, die von Sun für die Programmiersprache Java entwickelt wurde. Es ist als Teil der zentralen Java Application Programming Interface (API) verfügbar, bei der die Objektschnittstellen als Java-Schnittstellen definiert sind und die Objektserialisierung verwenden.
Mit RMI können Java-Methoden auf ein Remote-Objekt verweisen und Methoden des Remote-Objekts aufrufen. Das entfernte Objekt kann sich auf einer anderen Java Virtual Machine befinden, auf demselben Host oder auf völlig verschiedenen Hosts im Netzwerk. RMI stellt Methodenargumente durch Objektserialisierung bereit und entfernt sie und unterstützt das dynamische Herunterladen von Klassendateien über Netzwerke.
Techopedia erklärt Remote Method Invocation (RMI)
Der Remote-Methodenaufruf wurde erstmals in Java Development Kit (JDK) 1.1 eingeführt und wird in der verteilten Objektberechnung häufig verwendet. Es führt die objektorientierte Entsprechung von Remoteprozeduraufrufen durch. RMI-Funktionen sind in einem java.rmi-Paket enthalten und bieten verteilte Objektfunktionen für Java-basierte Anwendungen.
Die RMI-Architektur erweitert die Robustheit und Sicherheit der Java-Architektur auf die verteilte Computerwelt. Mit RMI kann der Code das Verhalten definieren und implementieren, das auf verschiedenen virtuellen Java-Maschinen verbleibt. Remote-Services in RMI werden mithilfe einer Java-Schnittstelle codiert, wobei die Implementierung in einer Klasse codiert wird. In der ersten Klasse wird die Implementierung des Verhaltens auf dem Server ausgeführt. Die zweite Klasse wird auf dem Client ausgeführt und fungiert als Proxy für den Remotedienst.
Die RMI-Implementierung besteht aus drei abstrakten Schichten - der Stub- und Skeleton-Schicht, der Remote-Referenzschicht und der Transportschicht. Die Stummel- und Gerüstschicht befindet sich direkt unter der Sicht des Entwicklers. Stub- und Skeleton-Objekte werden verwendet, um eine Verbindung zwischen dem Client und dem Remote-Objekt herzustellen. Ein Stub leitet Methodenaufrufe vom Client an den Server weiter und weiß, wie über die Verbindung mit dem Stub kommuniziert wird. Daher fungiert es als Proxy, in dem sich die Remoteobjektimplementierung befindet. Ein Verweis auf das entfernte Objekt durch einen Client ist buchstäblich ein Verweis auf den lokalen Stub. Der Client enthält eine lokale Kopie des Stub-Objekts. Skelette enthalten Methoden, die Aufrufe an die Remote-Objektimplementierung weiterleiten.
Die Schritte zum Entwerfen einer RMI-Anwendung sind:
- Definieren Sie Remote-Schnittstellen und implementieren Sie Client- und Remote-Objekte.
- Kompilieren Sie die Quelle und generieren Sie Stubs und Skelette.
- Machen Sie die erforderlichen Klassennetzwerke zugänglich.
- Führen Sie die Anwendung aus.
