19.5. LevelDB Cache Store

LevelDB is a key-value storage engine that provides an ordered mapping from string keys to string values.
The LevelDB Cache Store uses two filesystem directories. Each directory is configured for a LevelDB database. One directory stores the non-expired data and the second directory stores the keys pending to be purged permanently.

19.5.1. Configuring LevelDB Cache Store (Remote Client-Server Mode)

Procedure 19.1. To configure LevelDB Cache Store:

  • Add the following elements to a cache definition in standalone.xml to configure the database:
    <leveldb-store path="/path/to/leveldb/data"
        	       passivation="false"
        	       purge="false" >
        <leveldb-expiration path="/path/to/leveldb/expires/data" />
        <implementation type="JNI" />
    </leveldb-store>

    Note

    Directories will be automatically created if they do not exist.
For details about the elements and parameters used in this sample configuration, see Section 19.3, “Cache Store Configuration Details (Remote Client-Server Mode)”.

19.5.2. LevelDB Cache Store Sample XML Configuration (Library Mode)

The following is a sample XML configuration of LevelDB Cache Store:
<local-cache name="vehicleCache">
      <persistence passivation="false">
          <leveldb-store xmlns="urn:infinispan:config:store:leveldb:8.0
                        relative-to="/path/to/leveldb/data"  
                        shared="false"
                        preload="true"/>
      </persistence>
   </local-cache>
For details about the elements and parameters used in this sample configuration, see Section 19.2, “Cache Store Configuration Details (Library Mode)”.

19.5.3. Configure a LevelDB Cache Store Using JBoss Operations Network

Use the following procedure to set up a new LevelDB cache store using the JBoss Operations Network.

Procedure 19.2. 

  1. Ensure that Red Hat JBoss Operations Network 3.2 or higher is installed and started.
  2. Install the Red Hat JBoss Data Grid Plugin Pack for JBoss Operations Network 3.2.0.
  3. Ensure that JBoss Data Grid is installed and started.
  4. Import JBoss Data Grid server into the inventory.
  5. Configure the JBoss Data Grid connection settings.
  6. Create a new LevelDB cache store as follows:
    Use JBoss Operations Network to create a new cache store.

    Figure 19.1. Create a new LevelDB Cache Store

    1. Right-click the default cache.
    2. In the menu, mouse over the Create Child option.
    3. In the submenu, click LevelDB Store.
  7. Name the new LevelDB cache store as follows:
    Name the new LevelDB Cache Store

    Figure 19.2. Name the new LevelDB Cache Store

    1. In the Resource Create Wizard that appears, add a name for the new LevelDB Cache Store.
    2. Click Next to continue.
  8. Configure the LevelDB Cache Store settings as follows:
    Configure the new LevelDB Cache Store

    Figure 19.3. Configure the LevelDB Cache Store Settings

    1. Use the options in the configuration window to configure a new LevelDB cache store.
    2. Click Finish to complete the configuration.
  9. Schedule a restart operation as follows:
    Schedule a restart operation

    Figure 19.4. Schedule a Restart Operation

    1. In the screen's left panel, expand the JBossAS7 Standalone Servers entry, if it is not currently expanded.
    2. Click JDG (0.0.0.0:9990) from the expanded menu items.
    3. In the screen's right panel, details about the selected server display. Click the Operations tab.
    4. In the Operation drop-down box, select the Restart operation.
    5. Select the radio button for the Now entry.
    6. Click Schedule to restart the server immediately.
  10. Discover the new LevelDB cache store as follows:
    Discover the new LevelDB cache store

    Figure 19.5. Discover the New LevelDB Cache Store

    1. In the screen's left panel, select each of the following items in the specified order to expand them: JBossAS7 Standalong ServersJDG (0.0.0.0:9990)infinispanCache ContainerslocalCachesdefaultLevelDB Stores
    2. Click the name of your new LevelDB Cache Store to view its configuration information in the right panel.