Use this task to configure a data replication domain to
transfer data, objects, or events for session manager, dynamic cache,
or stateful session beans. Data replication domains use the data replication
service (DRS), which is an internal component that performs replication
services, including replicating data, objects, and events among application
servers.
Before you begin
Determine if you are using a multi-broker replication domain. If you configured a data
replication domain with a previous version of the product, you might be using a multi-broker
replication domain. Any replication domains that you create with the current version of the product
are data replication domains. You should migrate any multi-broker replication domains to data
replication domains.
About this task
Use this task to configure replication, a service that transfers data,
objects, or events among the application servers in a cluster. Use replication to prevent loss of
session data with session manager, to further improve the performance of the dynamic cache service,
and to provide failover in stateful session beans. Avoid trouble: If
you select the Configure HTTP memory-to-memory replication option when you
create a cluster, the replication domain is automatically created for you.
Complete the
following steps to enable data replication among the application servers in a cluster.
Procedure
- Create a replication domain.
Use one of the
following methods to create a replication domain:
- Create a replication domain manually.
To create a replication domain manually without
creating a new cluster, click in the administrative console.
On this page you can specify the properties for
the replication domain, including timeout, encryption, and number of replicas.
- Create a replication domain when you create a cluster.
To create a replication domain when you
create a cluster, click in the administrative console. Then click . The replication domain that is created has the same name as the cluster and has the
default settings for a replication domain. The default settings for a replication domain are to
create a single replica of each piece of data and to have encryption disabled. To modify the
replication domain properties, click in the administrative console.
- Configure the consumers, or the components that use the
replication domains.
Dynamic cache, session manager, and
stateful session beans are the three types of replication domain consumers.
Each type of consumer must be configured with a different replication
domain. For example, session manager uses one replication domain and
dynamic cache uses a different replication domain. However, use one
replication domain if you are configuring HTTP session memory-to-memory
replication and stateful session bean replication. Using one replication
domain in this case ensures that the backup state information of HTTP
sessions and stateful session beans are on the same application servers.
- Determine whether your configuration
requires additional thread resources.
The replication service uses threads that are obtained from the DRS thread pool for various
tasks, including processing messages. Previously, the replication service obtained threads from the
default thread pool. When the application server starts up, the default maximum thread pool size for
the DRS thread pool is 100 threads. However, this thread pool size might not be sufficient to enable
the replication service to obtain enough threads from the pool to process all of the incoming
replication messages. The number of incoming messages is influenced by the number of application
servers in the domain and the number of replication domain consumers on each application server. The
number of messages to be processed increases as the number of application servers in the domain
increases, the number of replication consumers increases, or both.
Persistent data that is not being replicated to the application servers when the application
server starts up might indicate that you need to increase the setting for the maximum thread pool
size. The maximum size of the DRS thread pool set to 100 is usually sufficient. However, in very
large topologies, you might need to set the maximum thread pool size to a value that is greater than
100.
Table 1. DRS thread pool custom properties . You can set the properties of the DRS thread pool through the following Java virtual machine
custom properties.
Property name |
Default value |
DRS_THREADPOOL_MINSIZE |
40 |
DRS_THREADPOOL_MAXSIZE |
100 |
DRS_THREADPOOL_ISGROWABLE |
false |
For more information, see the documentation about Java virtual machine custom
properties.
Results
Data is replicating among the application servers in a configured
replication domain.
What to do next
If you select DES or 3DES as the encryption type for a replication domain, an encryption
key is used for the encryption of messages. At regular intervals, for example once a month, you
should go to the page in the administrative console, and click Regenerate encryption
key to regenerate the key. After the key is regenerated, you must restart all of the
application servers that are configured as part of the replication domain. Periodically regenerating
the key improves data security.