Jini „Java im Netz“ 15.12.1998 Aktuelle Java-Trends, Norbert Schuler 1 Historie Projekt von Sun R&D, inspiriert von Bill Joys Konzept (1994) eine Sprache, die auf allen Platformen läuft eine virtuelle Maschine für diese Sprache hieraus entstand Java und die Java VM (1995) ein Netzwerksystem, welches verteilten VMs erlaubt, wie eine zu arbeiten auf dieser Idee ist Jini begründet 15.12.1998 Aktuelle Java-Trends, Norbert Schuler 2 Ziele „alles ist ein Dienst, alles kann leicht vernetzt werden“ das Netzwerk wird zu einem leicht administrierbarem Tool Resourcen können Hardware, Software oder gemischt sein Hinzufügen/Löschen und Anwendung von Resourcen und Diensten im Netz flexibler und einfacher Ziele aus verschiedenen Perspektiven erlaubt einem Benutzer einfachen Zugriff auf alle Resourcen im Netz (auch wenn die Netzwerkposition des Benutzers sich ändert) mehrere Benutzer können sich Resourcen im Netz teilen versorgt Entwickler mit Werkzeugen und Programmiermustern, welche die Entwicklung von sicheren und robusten Systemen erlauben Marktziele Vermarktung an alle Firmen mit Produkten und Dienstleistungen im Netz (von Geräteherstellern bis Softwareentwicklern) 15.12.1998 Aktuelle Java-Trends, Norbert Schuler 3 Architektur Jini selbst ist der Begriff für eine System-Architektur Jini ist aus folgenden Teilen zusammengesetzt, die sich mehr oder weniger überschneiden und verschwimmen: eine Menge von Komponenten, die eine Infrastruktur für zusammengeschlossene Dienste in einem verteilten System gewährleisten ein Programmiermodell, welches die Konstruktion von verläßlichen verteilten Diensten unterstützt und fördert Dienste (services) können Teil eines Jini-Verbundes werden und damit anderen Mitgliedern Ihre Funktionalität anbieten 15.12.1998 Aktuelle Java-Trends, Norbert Schuler 4 Norbert Schuler: Architektur *Erweiterung des JavaBeansEventmodells Infrastruktur erweiterte Version von RMI für Kommunikationsschicht ein verteiltes Sicherheitssystem (in RMI integriert) ein „discovery“-Protokoll für die Verwaltung der Dienste (Hinzufügen, Anwenden, Löschen) „lookup-service“ als Bereitsteller von Diensten Programmiermodell Schnittstellen die Java-Programmiermodell erweitern (z.B. leasing-, event&notification*-, transaction-interfaces) beruht auf der Fähigkeit zum Transport von Code Dienste mit Infrastrukur und Programmiermodell gebaut benutzen JavaSpaces für Kommunikation und Speicherung 15.12.1998 Aktuelle Java-Trends, Norbert Schuler 5 Architektur-Voraussetzungen Mit seiner Architektur ist Java ideale Plattform für Jini Jini macht folgende Annahmen über die weitere Entwicklung seine Umgebung jedes einfachste Gerät hat einen Prozessor (Prozessoren werden immer billiger) jedes einfachste Gerät hat genügend Speicher (Speicher wird immer billiger) die Netzwerkbandbreite liegt zwischen 100Mbits und 1Gbit pro Sekunde (Bandbreite wird immer besser) Speichermedien werden immer größer relativ zum Preis die digitalen Komponenten in Unterhaltungsgeräten werden weiter ausgebaut 15.12.1998 Aktuelle Java-Trends, Norbert Schuler 6