Schnittstelle "BackingMap"

Jede ObjectGrid-Instanz enthält eine Sammlung von BackingMap-Objekten. Verwenden Sie die Methode "defineMap" oder die Methode "createMap" der Schnittstelle "ObjectGrid", um jede BackingMap zu benennen und einer ObjectGrid-Instanz hinzuzufügen. Diese Methoden geben eine BackingMap-Instanz zurück, die anschließend zum Definieren des Verhaltens einer einzelnen Map verwendet wird. Sie können sich eine BackingMap als Speichercache festgeschriebener Daten für eine einzelne Map vorstellen.

Schnittstelle "Session"

Die Schnittstelle "Session" wird verwendet, um eine Transaktion zu starten und das ObjectMap- bzw. JavaMap-Objekt abzurufen, das für die transaktionsorientierte Interaktion zwischen einer Anwendung und einem BackingMap-Objekt erforderlich ist. Die Transaktionsänderungen werden jedoch erst dann auf das BackingMap-Objekt angewendet, wenn die Transaktion festgeschrieben wird. Sie können sich eine BackingMap als Speichercache festgeschriebener Daten für eine einzelne Map vorstellen. Weitere Einzelheiten finden Sie in Session-Objekte für den Zugriff auf Daten im Grid verwenden.

Die Schnittstelle "BackingMap" stellt Methoden für die Festlegung von BackingMap-Attributen bereit. Einige der set-Methoden unterstützen die Erweiterbarkeit einer BackingMap über mehrere angepasste Plug-ins. In der folgenden Liste sind die set-Methoden für die Festlegung von Attributen und die Bereitstellung angepasster Plug-in-Unterstützung aufgeführt:

// Für die Festlegung von BackingMap-Attributen.
public void setReadOnly(boolean readOnlyEnabled);
public void setNullValuesSupported(boolean nullValuesSupported);
public void setLockStrategy( LockStrategy lockStrategy );
public void setCopyMode(CopyMode mode, Class valueInterface);
public void setCopyKey(boolean b);
public void setNumberOfBuckets(int numBuckets);
public void setNumberOfLockBuckets(int numBuckets);
public void setLockTimeout(int seconds);
public void setTimeToLive(int seconds);
public void setTtlEvictorType(TTLType type);
public void setEvictionTriggers(String evictionTriggers);

// Für die Festlegung eines optionalen angepassten Plug-ins, das von der
// Anwendung bereitgestellt wird.
public abstract void setObjectTransformer(ObjectTransformer t);
public abstract void setOptimisticCallback(OptimisticCallback checker);
public abstract void setLoader(Loader loader);
public abstract void setPreloadMode(boolean async);
public abstract void setEvictor(Evictor e);
public void setMapEventListeners( List /*MapEventListener*/ eventListenerList );
public void addMapEventListener(MapEventListener eventListener );
public void removeMapEventListener(MapEventListener eventListener );
public void addMapIndexPlugin(MapIndexPlugin index);
public void setMapIndexPlugins(List /\* MapIndexPlugin \*/ indexList );
public void createDynamicIndex(String name, boolean isRangeIndex,
String attributeName, DynamicIndexCallback cb);
public void createDynamicIndex(MapIndexPlugin index, DynamicIndexCallback cb);
public void removeDynamicIndex(String name);

Für jede der aufgelisteten set-Methoden gibt es eine entsprechende get-Methode.

BackingMap-Attribute

Jede BackingMap hat die folgenden Attribute, die gesetzt werden können, um das Verhalten der BackingMap zu ändern bzw. zu steuern:

Das folgende Beispiel veranschaulicht, wie Sie die BackingMap "someMap" in der ObjectGrid-Instanz "someGrid" definieren und verschiedene Attribute der BackingMap mit den set-Methoden der Schnittstelle "BackingMap" setzen:

import com.ibm.websphere.objectgrid.BackingMap;
import com.ibm.websphere.objectgrid.LockStrategy;
import com.ibm.websphere.objectgrid.ObjectGrid;
import com.ibm.websphere.objectgrid.ObjectGridManagerFactory;

...

ObjectGrid og = 
ObjectGridManagerFactory.getObjectGridManager().createObjectGrid("someGrid");
BackingMap bm = objectGrid.getMap("someMap");
bm.setReadOnly( true ); // Standardeinstellung Lese-/Schreibzugriff überschreiben
bm.setNullValuesSupported(false);
// Standardmäßiges Zulassen von Nullwerten überschreiben
bm.setLockStrategy( LockStrategy.PESSIMISTIC );
// Standardeinstellung OPTIMISTIC überschreiben
bm.setLockTimeout( 60 );
// Standardeinstellung von 15 Sekunden überschreiben
bm.setNumberOfBuckets(251);
// Standardeinstellung überschreiben (Primzahlen funktionieren am besten)
bm.setNumberOfLockBuckets(251);
// Standardeinstellung überschreiben (Primzahlen funktionieren am besten)

BackingMap-Plug-ins

Die Schnittstelle "BackingMap" hat mehrere optionale Plug-in-Punkte für erweiterbare Interaktionen mit dem ObjectGrid:

Weitere Informationen zu Plug-ins finden Sie in Übersicht über Plug-ins.