WebSphere Extended Deployment, Version 6.0.x     Betriebssysteme: AIX, HP-UX, Linux, Solaris, Windows, z/OS

ObjectGrid

ObjectGrid ist ein erweiterbares, transaktionsorientiertes Framework für das Zwischenspeichern (Caching) von Objekten für J2SE- (Java 2 Platform, Standard Edition) und J2EE-Anwendungen (Java 2 Platform, Enterprise Edition).

Sie können die ObjectGrid-API bei der Entwicklung Ihrer Anwendungen einsetzen, um Objekte im ObjectGrid-Framework abzurufen, zu speichern, zu löschen und zu aktualisieren. Außerdem können Sie angepasste Plug-ins implementieren, die Aktualisierungen des Cache überwachen, Daten aus externen Datenquellen abrufen und dort speichern, das Löschen von Einträgen aus dem Cache verwalten oder Cache-Funktionen für Ihre eigene ObjectGrid-Anwendungsumgebung im Hintergrund ausführen.

Map-basierte API

ObjectGrid stellt eine API bereit, die auf dem Interface java.util.Map basiert. Die erweiterte API unterstützt die Gruppierung von Operationen zu transaktionsorientierten Blöcken. Dieses Interface ist ein Superset des Interface java.util.Map und bietet zusätzlich Unterstützung für Stapeloperationen, Invalidierung, Zuordnung von Schlüsselwörtern sowie explizites Einfügen und Aktualisieren. Der Semantik des Java-Interface Map wurden Erweiterungspunkte hinzugefügt, damit Sie die folgenden funktionalen Erweiterungen implementieren können:

[Version 6.0.1 and later] ObjectGrid-Umgebung

[Version 6.0.1 and later] Sie können das ObjectGrid-Framework nutzen, indem Sie eines der folgenden Angebote installieren: In beiden Angeboten unterstützt ObjectGrid Client/Server-Features. Die Serverlaufzeitumgebung unterstützt vollständige Cluster-Funktionen, Replikation und Partitionierung verteilter Objekt-Caches. Die Clientlaufzeitumgebung unterstützt das Konzept einer nahen Cache- und WLM-Routing-Logik an ferne Cluster. Außerdem unterstützt die Clientlaufzeitumgebung die Erstellung lokaler Objekt-Maps.
[Version 6.0.1 and later] Die Unterstützungsstufe richtet sich danach ob Sie die Clientlaufzeitumgebung, die Serverlaufzeitumgebung, das integrierte ObjectGrid oder das eigenständige ObjectGrid ausführen.
In WebSphere Extended Deployment integriertes ObjectGrid
Serverlaufzeitumgebung: Die Serverlaufzeitumgebung ist integriert. Für WebSphere Extended Deployment Version 6.0.1 wird die integrierte Laufzeitumgebung auf der Plattform z/OS nicht unterstützt.

Clientlaufzeitumgebung: Die Clientlaufzeitumgebung wird in J2SE und J2EE mit JDK Version 1.3.1 und höher, einschließlich WebSphere Application Server Version 5.0.2 und höher unterstützt. Die Clientlaufzeitumgebung wird auf der Plattform z/OS vollständig unterstützt.

Eigenständiges ObjectGrid
Serverlaufzeitumgebung: Die Serverlaufzeitumgebung kann in eigenständigen Java Virtual Machines (JVM) als einzelner Server oder als Server-Cluster ausgeführt werden. Der eigenständige Server wird auf den meisten J2SE- und J2EE-Plattformen mit JDK Version 1.4.2 und höher unterstützt. Der eigenständige Server wird in WebSphere Application Server Version 6.0.2 und höher unterstützt. Die eigenständige Serverlaufzeitumgebung wird auf der Plattform z/OS für WebSphere Extended Deployment Version 6.0.1 nicht unterstützt.

Clientlaufzeitumgebung: Die Clientlaufzeitumgebung wird auf J2SE- und J2EE-Plattformen mit JDK Version 1.3.1 und höher, einschließlich WebSphere Application Server Version 5.0.2 und höher unterstützt.

[Version 6.0.1 and later] Sitzungsverwaltung

[Version 6.0.1 and later] Es wird eine vollständig verteilte Implementierung der HTTP-Sitzungsverwaltung bereitgestellt, die HTTP-Sitzungsobjekte im ObjectGrid speichert.

Einfache Installation

ObjectGrid lässt sich in wenigen einfachen Schritten installieren und konfigurieren. Zu diesen Schritten gehören das Kopieren der JAR-Dateien (Java-Archiv) in Ihren Klassenpfad und das Definieren einiger Konfigurationsanweisungen.

Transaktionsorientierte Änderungen

Alle Änderungen werden im Kontext einer Transaktion vorgenommen, um eine stabile Programmschnittstelle zu gewährleisten. Die Transaktion kann explizit innerhalb der Anwendung gesteuert werden, oder die Anwendung kann den Programmiermodus für automatische Festschreibung verwenden. Diese Transaktionsänderungen können in einem ObjectGrid-Cluster im asynchronen und synchronen Modus repliziert werden, um einen skalierbaren und fehlertoleranten Zugriff zu ermöglichen.

[Version 6.0.1 and later] Sie können ObjectGrid von einem einfachen Grid in einer einzelnen Java Virtual Machine (JVM) zu einem Grid skalieren, das ObjectGrid-Cluster von JVMs umfasst. Diese Server stellen die Daten über die Map-APIs für eine große Menge von ObjectGrid-fähigen Clients bereit. Die ObjectGrid-Clients verwenden die grundlegenden Java-Map-APIs. Der Anwendungsentwickler muss jedoch keine Java-TCP/IP- und RMI-APIs (Remote Method Invocation) entwickeln, weil der ObjectGrid-Client die anderen ObjectGrid-Server im Netz erreichen kann, die Informationen enthalten. Wenn Ihr Datenbestand für eine JVM zu große ist, können Sie die Daten mit ObjectGrid partitionieren.

[Version 6.0.1 and later] ObjectGrid bietet Ihrer Anwendungslösung außerdem Funktionen für hohe Verfügbarkeit. Die gemeinsame Nutzung von Objekten basiert auf einem Replikationsmodell mit einem primären Server, einem oder mehreren Replikationsservern und einem oder mehreren Standby-Servern. Dieser Cluster von Replikationsservern wird als Replikationsgruppe bezeichnet. Wenn mit einer Schreiboperation auf die Replikationsgruppe zugegriffen wird, wird die Anforderung an den primären Server weitergeleitet. Erfolgt der Zugriff mit einer Leseoperation oder ist die Map schreibgeschützt, kann die Anforderung an den primären oder an die Replikationsserver weitergeleitet werden. Die Standby-Servers sind als potenzielle Replikationsserver für einen Serverausfall definiert. Wenn ein primärer Server ausfällt, wird zum Überbrücken der Ausfallzeit einer der Replikationsserver zum primären Server. Dieses Verhalten kann nach Bedarf konfiguriert und erweitert werden.

[Version 6.0.1 and later] Wenn Sie einen einfacheren Ansatz für die Objektweitergabe verwenden möchten, steht Ihnen wie in Extended Deployment Version 6.0 ein Peer-to-Peer-Modell mit einer geringeren Servicequalität zur Verfügung. Wenn Sie diese einfachere Unterstützung für verteilte Transaktionen verwenden, können die Peers mit dem Messaging-Protokoll über Änderungen informiert werden. Das Messaging-Protokoll ist integriert, wenn Sie mit WebSphere Application Server Version 6.0.2 oder höher arbeiten. Wenn Sie nicht mit WebSphere Application Server Version 6.0.2 oder höher arbeiten, muss ein anderes Messaging-Protokoll, z. B. ein JMS-Provider, bereitgestellt werden.

Mit dem Injection-Container kompatible APIs

Sie können ObjectGrid mit einer einfachen XML-Datei oder über das Programm mit Java-APIs konfigurieren. Die Java-APIs sind so konzipiert, dass sie auch in Umgebungen funktionieren, in denen Sie Injection-basierte Frameworks für die Konfiguration Ihrer Anwendungen verwenden. Die APIs und Interfaces der ObjectGrid-Objekte können auch von einem IoC-Container (Inversion of Control) aufgerufen werden. Anschließend können Referenzen auf ObjectGrid-Schlüsselobjekte in die Anwendung eingespeist (engl. inject) werden.

Erweiterbare Architektur

Die meisten Elemente des ObjectGrid-Framework können mit Plug-ins erweitert werden. Sie können das ObjectGrid-Framework so optimieren, dass eine Anwendung bei ihren Entscheidungen zwischen Konsistenz und Leistung abwägen kann. Mit angepasstem Plug-in-Code können auch die folgenden anwendungsspezifischen Verhalten unterstützt werden: Sie können jedes dieser Verhalten implementieren, ohne die Verwendung der grundlegenden API-Interfaces für ObjectGrid-Caches zu beeinträchtigen. Mit dieser Transparenz ist es möglich, die Datenspeicher- und Transaktionsverarbeitung von Anwendungen, die die die Cache-Infrastruktur verwenden, ohne Beeinträchtigung in großem Umfang zu ändern.

ObjectGrid als primäre API oder Cache der zweiten Ebene verwenden

Die ObjectGrid-APIs können von der Anwendung direkt als Lookaside-Cache oder Durchschreib-Cache verwendet werden. Im Durchschreibmodus implementiert die Anwendung ein Loader-Objekt, so dass die ObjectGrid-Instanz transparent für die Anwendung Änderungen anwenden und Daten direkt abrufen kann. ObjectGrid kann für gängige objektrelationale Zuordnungsfunktionen (Mapper) auch als Cache der zweiten Ebene verwendet werden. Hierfür müssen Sie einen Adapter schreiben. In diesem Modus ist der Cache für die Anwendung nicht sichtbar, weil die Anwendung die APIs des objektrelationalen Mapper als primäre API für den Zugriff auf die Daten verwendet.

Der Artikel Erste Schritte mit ObjectGrid enthält Informationen zur Verwendung und Entwicklung von ObjectGrid-Anwendungen.

Weitere Informationen zu den ObjectGrid-APIs finden Sie im Programmierhandbuch zu ObjectGrid. Weitere Informationen finden Sie im Artikel ObjectGrid-Ressourcen.




Related tasks
Erste Schritte mit ObjectGrid

Konzeptartikel    

Nutzungsbedingungen | Feedback Letzte Aktualisierung: Mar 23, 2006 9:49:36 AM EST
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=?topic=/com.ibm.websphere.xd.doc/info/prodovr/cobgojbectgrid.html

© Copyright IBM 2005, 2006. Alle Rechte vorbehalten.
Dieses Information Center beruht auf der Eclipse-Technologie. (http://www.eclipse.org)