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-Umgebung
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.
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.
Sitzungsverwaltung
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.
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.
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.
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
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