Show Table of Contents
17.3. Configure the JBoss Cache instance used for session state replication
The container for a distributable web application makes use of JBoss Cache to provide HTTP session replication services around the cluster. It integrates with the CacheManager service to obtain a reference to a JBoss Cache instance. For more information, refer to the Distributed Caching with JBoss Cache and JBoss Cache Configuration and Deployment chapters in the Administration and Configuration Guide
The name of the JBoss Cache configuration to use is controlled by the
cacheName
element in the application's jboss-web.xml
(see Section 17.1, “Enabling session replication in your application”). In most cases this does not need to be set because the default value of standard-session-cache
is appropriate.
The JBoss Cache configurations in the
CacheManager
service expose a number of options.
The
standard-session-cache
configuration is already optimized for the web session replication use case, and most of the settings should not be altered. Administrators may be interested in altering the following settings:
- cacheModeThe default is
REPL_ASYNC
, which specifies that a session replication message sent to the cluster does not wait for responses from other cluster nodes confirming that the message has been received and processed. The alternative mode,REPL_SYNC
, offers a greater degree of confirmation that session state has been received, but reduces performance significantly. - enabled property in the buddyReplicationConfig sectionSet to
true
to enable buddy replication. Default isfalse
. - numBuddies property in the buddyReplicationConfig sectionSet to a value greater than the default (
1
) to increase the number of backup nodes onto which sessions are replicated. Only relevant if buddy replication is enabled. - buddyPoolName property in the buddyReplicationConfig sectionA way to specify a preferred replication group when buddy replication is enabled. JBoss Cache tries to pick a buddy who shares the same pool name (falling back to other buddies if not available). Only relevant if buddy replication is enabled.
- multiplexerStackName of the JGroups protocol stack the cache should use.
- clusterNameIdentifying name JGroups will use for this cache's channel. Only change this if you create a new cache configuration, in which case this property should have a different value from all other cache configurations.
If you wish to use a completely new JBoss Cache configuration rather than editing one of the existing ones, refer to Deployment via the CacheManager Service section in the Administration and Configuration Guide .