Remote Method Invocation Einleitung Einordnung von RMI Ziele von RMI Grundlagen RPC Funktionsweise von RMI Kommunikations-Architektur Elemente und Ablauf Implementierung Stephan Bögel 1/10
RMI - Einleitung Einordnung von RMI neben der reinen Datenübertragung im Netzwerk, ist der Zugriff auf Dienste, die sich auf entfernten Rechnern befinden wichtig RMI Werkzeug/Mechanismus zur verteilten Anwendungsprogrammierung d.h. Zugriff auf Objekte, die im Kontext einer anderen JVM instanziiert sind diese JVM kann (muß aber nicht) auf einem entfernten Rechner laufen Plattformunabhängigkeit von Java Stephan Bögel 2/10
RMI - Einleitung Ziele von RMI Zugriff auf die Dienste eines entfernten Rechners erfordert ein aufwendiges und fehleranfälliges Kommunikationsprotokoll (Datenerstellung, Kommunikationssteuerung) RMI implementiert dieses Kommunikationsprotokoll und entlastet den Anwendungsprogrammierer Skalierbarkeit von Anwendungen erhöhen Lastausgleich ermöglichen z.B. Middleware Stephan Bögel 3/10
RMI - Grundlagen RPC – Remote Procedure Call erstmals 1983 von Birrel und Nielson [Birrel, 1983] vorgestellt RPC Prinzip: Zugriff auf entfernte Serverfunktion sieht wie ein lokaler Prozeduraufruf aus verbirgt so die Komplexität der Netzwerk- programmierung vor dem Anwendungsentwickler eigentliche Verbindung läuft über Stellvertreter- objekte (engl. proxies) synchrones Kommunikationsschema Stephan Bögel 4/10
RMI – Grundlagen: RPC Stephan Bögel 5/10
RMI – Funktionsweise Kommunikations-Architektur Stephan Bögel 6/10
RMI – Funktionsweise Elemente Stephan Bögel 7/10
RMI – Funktionsweise Ablauf Stephan Bögel 8/10
RMI – Implementierung Vorgehen Stephan Bögel 9/10
RMI – Implementierung Zusammenfassung Stephan Bögel 10/10
RMI – Ausblick Granularität der entfernten Methoden Aufruf einer entfernten Methode kostet wesentlich mehr Zeit als der Aufruf einer lokalen Methode Laufzeitprobleme Nachladen von Programmcode Distributed Garbage Collection Die verschiedenen RMI Protokolle Sichere Übertragung mit SSL Umgehen von Firewalls mit HTTP Stephan Bögel Zusatz 11
RMI – Literatur Stephan Bögel Zusatz 12