400 likes | 503 Views
Arbeitskreis Software Technologien FH Konstanz 15. Oktober 1999. JINI - Was ist das?. Domenico Lorenzelli Sun Java Center Schweiz domenico.lorenzelli@sun.com. Die Jini Vision. Connect Anything at Anytime Anywhere. Agenda. Was ist Jini? Konzepte. Was ist Jini?. Eine Vision?
E N D
Arbeitskreis Software Technologien FH Konstanz 15. Oktober 1999 JINI - Was ist das? Domenico Lorenzelli Sun Java Center Schweiz domenico.lorenzelli@sun.com
Die Jini Vision Connect Anything at Anytime Anywhere
Agenda • Was ist Jini? • Konzepte
Was ist Jini? • Eine Vision? • Ein Produkt? • Erst mal `ne Demo!
Was ist Jini? DEF: Jini ist eine Technologie zur Verteilung von Diensten.
Was ist Jini? Jini erlaubt Maschinen und Programmen eine Gemeinschaft zu bilden und ihre Ressourcen und Fähigkeiten anderen Mitgliedern dieser Gemeinschaft bereitzustellen oder die Ressourcen und Fähigkeiten anderer Mitglieder zu nutzen.
Was ist Jini? Jini erlaubt Maschinen und Programmen eine Gemeinschaft zu bilden und ihre Ressourcen und Fähigkeiten anderen Mitgliedern dieser Gemeinschaft bereitzustellen oder die Ressourcen und Fähigkeiten anderer Mitglieder zu nutzen.
Was ist Jini? Jini erlaubt Maschinen und Programmen eine Gemeinschaft zu bilden und ihre Ressourcen und Fähigkeiten anderen Mitgliedern dieser Gemeinschaft bereitzustellen oder die Ressourcen und Fähigkeiten anderer Mitglieder zu nutzen.
„Spontanes Networking“ • Gebrauch von Services • ohne Konfiguration • Ad hoc und sporadisch • Automatische Komposition und Dekomposition eines verteilten Gesamtsystems • Dynamisches Groupware Konzept
Was ist Jini? Jini erlaubt Maschinen und Programmen eine Gemeinschaft zu bilden und ihre Ressourcen und Fähigkeiten anderen Mitgliedern dieser Gemeinschaft bereitzustellen oder die Ressourcen und Fähigkeiten anderer Mitglieder zu nutzen.
Das Konzept • Infrastruktur • Wie kommen Jini Dienste ins Netz? • Discovery/Join, Lookup • Verteilte Programmierung • Wie interagieren Jini Dienste untereinander? • Leasing, Events, Transaction APIs • Implementierung von Diensten • JavaSpaces, Transaction Manager
Jini erweitert Java Programming Model Services Infrastructure JavaSpaces TX Manager Lease Discovery Jini Event Lookup Extended Security Transaction Java API’s Enterprise Beans Java VM JNDI Java Beans ... RMI JTS ... Security
Programming Model Services Infrastructure JavaSpaces TX Manager Lease Discovery Jini Event Lookup ExtendedSecurity Transaction Java API’s Enterprise Beans Java VM JNDI Java Beans ... RMI JTS ... Security Jini Infrastrukur “The set of components that allow the building of a Jini system”
Jini Jini Lookup Service Service Provider Service Consumer
Discovery Jini Lookup Service Service Provider Service Consumer
Discovery Jini Lookup Service Service Provider Service Consumer
Discovery Jini Lookup Service Discovery Service Provider Service Consumer
Join Jini Lookup Service Join (Registrierung) Service Provider Service Consumer
Proxy Proxy Service Item Attribute Proxy Attribute Service Item Service Item Attribute Attribute Attribute Attribute Attribute Attribute Attribute Service Item Jini Lookup Service
Nutzer geht ans Netz Jini Lookup Service Service Provider Service Consumer
Der Nutzer trägt sich ein Jini Lookup Service Discovery Service Provider Service Consumer
Lookup Jini Lookup Service Lookup Service Provider Service Consumer
Jini Jini Lookup Service Service Provider Interaktion Service Consumer Beliebiges Protokoll
Interface und Implementierung Service Objekt Service Interface Beliebiges Netzwerk Protokoll Service Consumer Service Provider
Jini Sicherheitsmodell • Erweiterung des bestehenden Java Sicherheitsmodells um: • Authentifizierung • Integrität • Vertraulichkeit • Delegation • Identität wird beim Aufruf einer entfernten Methode mit übermittelt
Programming Model Services Infrastructure JavaSpaces TX Manager Lease Discovery Jini Event Lookup Extended Security Transaction Java API’s Enterprise Beans Java VM JNDI Java Beans ... RMI JTS ... Security Jini Technology
Programming Model Services Infrastructure JavaSpaces TX Manager Lease Discovery Jini Event Lookup ExtendedSecurity Transaction Java API’s Enterprise Beans Java VM JNDI Java Beans ... RMI JTS ... Security Jini Infrastructure “The set of components that allow the building of a Jini system”
Programming Model Services Infrastructure Discovery JavaSpaces TX Manager Lease Jini Lookup Event Extended Security Transaction Java API’s Enterprise Beans Java VM JNDI Java Beans ... RMI JTS ... Security Jini Programmiermodell “The set of interfaces that allow the construction of reliable services”
Lease • Protokoll für das Ressourcenmanagement • befristeter Kontrakt zwischen Objekten • mit Verlängerungsoption • Selbsttätige Netzabnahme nach Ablauf der Leasingperiode.
Event • Erweitern das Java Event Modell auf verteilte Dienste • Registrierung und Benachrichtigung • Event Managers
Event • Verschiedene verteilte Protokolle stehen zur Verfügung • push, pull, filter ... • Events unterliegen auch dem Leasing Protokoll
Transaction • Koordination verteilter Objekte • Unterstützt verschiedene Stufen der ACID Properties • Nested Transactions • Benutzt Leasing Protokoll
Programming Model Services Infrastructure JavaSpaces TXManager Lease Discovery Jini Event Lookup Extended Security Transaction Java API’s Enterprise Beans Java VM JNDI Java Beans ... RMI JTS ... Security Jini Services “Jini services provide simple solutions to complex problems faced by developers in the distributed environment”
JavaSpaces Service • Verteilter, “dynamischer Speicher” für vernetzte JVMs • Unterstützt die Idee der Federation auf der Ebene der JVMs • Stellt eine einfache Methode der Objektpersistenz bereit
JavaSpaces Service • Messaging • async, store and forward, routed, filtered... • JavaSpaces Service Interface • Writing, Finding, Reading, Removing, Event
Transaction Manager Service • Benuztung von Transaktionsprotokollen auf Objektebene • Light-weight • Erweiterbar
Jini Kit • Grundlegende Dienste, die Jini benötigt um in Gang zu kommen sind: • Java 2 • Web Server • RMI Activation Dämon • Lookup Service
Jini Lizenzsituation • Sun Community SourceLicensing • Langer Rede kurzer Sinn: • Jini Quellcode ist frei verfügbar für Studium, Forschung und internen Gebrauch • Für kommerzielle Produkte, die Jini Quellcode beinhalten, muss eine Vereinbarung und eine Brandinggebühr entrichtet werden. • Anwendungen basierend auf Jini benötigen keine Quellcode-Lizenzvereinbarung
Mehr Information • Quellcode • java.sun.com/products/jini • Java Developer Connection • Literatur • www.jini.org • java.sun.com/products/jini • W. Keith Edwards: “Core Jini“, Prentice Hall PTR, 1999
Fragen und Antworten Domenico Lorenzelli Sun Java Center Schweiz domenico.lorenzelli@swiss.sun.com