1 / 14

JAVA RMI

JAVA RMI. RMI. RMI steht für Remote Method Invocation Angelehnt an RPC (remote procedure call) Bestandteil von JAVA Package Java.rmi.*. VORTEIL VON JAVA. wurde u.a. entworfen, um die Entwicklung von Netzwerk-Applikationen zu erleichtern Java-Objekte sind: klein maschinenunabhängig

Download Presentation

JAVA RMI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JAVA RMI

  2. RMI • RMI steht für Remote Method Invocation • Angelehnt an RPC • (remote procedure call) • Bestandteil von JAVA • Package Java.rmi.*

  3. VORTEIL VON JAVA • wurde u.a. entworfen, um die Entwicklung von Netzwerk-Applikationen zu erleichtern • Java-Objekte sind: • klein • maschinenunabhängig • portabel • Sicher

  4. VERTEILTE ANWENDUNG IN JAVA • Java ist geeignet für verteilten Systemen • RMI bietet die Möglichkeit: • verteilte Anwendungen in JAVA • einfach abstrahierter entfernter Methodenaufruf • Transparenzprinzip • Keine Kenntnis über Netzprogrammierung erforderlich

  5. EINGENSCHAFT VON RMI • RMI bietet einfache Möglichkeit um verteilte, plattformübergreifende Softwareherzustellen, die transparent über heterogene Netzwerke hinweg arbeitet. • RMI ermöglicht das Aufrufen von Java-Methoden auf Objekte die in einem über ein Netzwerk verbundenen Rechner residieren. • Die Basis eines RMI-Programms sind „Remote Objects“.

  6. BESTANDTEIL • RMI besteht aus • Naming Service • Kommunikationskomponente • Server • Client

  7. LAYER

  8. PROTOKOLL • RMI Wired Protocol • Von Sun • Aufbauend auf TCP/IP • Verwendet HTTP Server • IIOP (Internet Inter ORB Protocol) • Von OMG (Object Management Group) • Verwendet auch in CORBA

  9. SERIALISATION • Um Objekte in einen Stream verwandelt werden können, welcher dann versandt wird • Durch Stub und Skeleton Klassen auf dem Client bzw. Server • Schreibt man RMI Objekte und bewegt Objekte als Parameter oder Ergebnis,dann sollten diese Objekte als Serializable markiert sein

  10. RMI Class Loader • Klassen zu übermittelten Objekten müssen eventuell nachgeladen werden • Klassen werden nur nachgeladen, wenn ein SecurityManager installiert ist: • void System. setSecurityManager( SecurityManager s)

  11. SecurityManager • SecurityManager ist abstrakte Klasse mit Methoden, die java.lang.SecurityManager werfen wenn bestimmte Operationen nicht erlaubt sind • java. rmi. RMISecurityManager implementiert eine • Sicherheitspolicy,z. B.: • Kein Arbeiten mit Ports • Keine Manipulation von Threads • Keine Prozesse

  12. Naming Service • Objekte mit lesbaren Namen zu assoziieren • bind() • rebind() • unbind() • lookup() • list() • Registry • der eigentliche Server

  13. SCHICHTEN MODEL

  14. VERGLEICH • Vorteile zu CORBA • Transparenz • einfache Programmierung • eingebunden in JAVA JDK • URL basierte Namensgebung • Nachteile zu CORBA • auf JAVA beschränkt, d.h. nicht so mächtig • Geschwindigkeitsnachteil • wenige Services implementiert

More Related