![]() ![]() ![]() ![]() |
Clusters: Configuration: Replication
Configuration Options Advanced Configuration Options Related Tasks Related Topics
This page is used to configure how WebLogic Server will replicate HTTP Session State across a cluster.
WebLogic server provides the ability to replicate HTTP session state across multiple clusters. This improves high-availabiltity and fault tolerance by allowing clusters to be spread across multiple geographic regions, power grids, and internet service providers.
Configuration Options
Name Description Cross-cluster Replication Type Optimizes cross-cluster replication for the type of network that servers in the clusters use for administrative communication.
To enhance the reliability of HTTP sessions, you can configure servers in one cluster to replicate the session data to servers in a different cluster. In such an environment, configure the clusters to be one of the following types:
man
if the clustered servers can send their data through a metro area network (man) in which latency is negligible. With this ClusterType value, servers replicate session state synchronously and in memory only. For example, when serverA in cluster1 starts an HTTP session, its backup server, serverB in cluster2, immediately replicates this session in memory to Server B.
wan
if the clusters are far apart or send their data through a wide area network (wan) that experiences significant network latency. With this ClusterType value, a server replicates session state synchronously to the backup server in the same cluster and asynchronously to a server in the remote cluster. For example, when serverA in cluster1 starts an HTTP session, it sends the data to serverB in cluster1 and then asynchronously sends data to serverX in cluster 2. ServerX will persist the session state in the database.
If you persist session data in a replicating database, and if you prefer to use the database to replicate the data instead of WebLogic Server, choose a cluster type of
wan
and leave the remote cluster address undefined. WebLogic Server saves the session data to the local database and assumes that the database replicates data as needed.MBean Attribute:
ClusterMBean.ClusterType
Changes take effect after you redeploy the module or restart the server.
Remote Cluster Address Set the foreign cluster. Cluster infrastructure uses this address to connect to foreign cluster for HTTP Session WAN/MAN failover.
MBean Attribute:
ClusterMBean.RemoteClusterAddress
Changes take effect after you redeploy the module or restart the server.
Replication Channel The channel name to be used for replication traffic. Cluster infrastructure uses this channel to send updates for HTTP sessions and stateful session beans. If none is set then the default channel will be used.
In order for this feature to work, the named channel must exist on all members of the cluster and must be configured to use the same protocol. It is valid for the selected channel to be configured to use a secure protocol.
MBean Attribute:
ClusterMBean.ReplicationChannel
Changes take effect after you redeploy the module or restart the server.
Data Source For Session Persistence To support HTTP Session failover across data centers, a datasource is required to dump session state on disk.
MBean Attribute:
ClusterMBean.DataSourceForSessionPersistence
Changes take effect after you redeploy the module or restart the server.
Secure Replication Enabled Servers in a cluster replicates session data. If replication channel is defined then the session data will be sent using the replication channel protocol and secured replication settings will be ignored. If no replication channel is defined and secured replication is enabled then session data for in-memory replication will be sent over SSL using default secured channel. However, this added security for replication traffic comes with a significant cluster performance degradation. It should only be enabled if security is of greater concern than the performance degradation.
MBean Attribute:
ClusterMBean.SecureReplicationEnabled
Changes take effect after you redeploy the module or restart the server.
Advanced Configuration Options
Name Description Session Flush Interval Interval in seconds until HTTP Sessions are periodically flushed to the backup cluster to dump session state on disk.
MBean Attribute:
ClusterMBean.SessionFlushInterval
Session Flush Threshold When number of sessions to be flushed reaches this threshold limit, sessions will be flushed to the backup cluster before the flush interval. This helps the server to flush sessions faster under load.
MBean Attribute:
ClusterMBean.SessionFlushThreshold
Persist Sessions On Shutdown When shutting down servers, sessions are not updated. If the primary and secondary servers of a session are shut down with no session updates, the session will be lost. Turning on PersistSessionsOnShutdown will save any active sessions to the database specified in ClusterMBean#getDataSourceForSessionPersistence() when a server is shutdown. The sessions will not be written at any other time. (For example, they are not saved via this mechanism if there is a server crash.)
This attribute is applicable both to session persistence on server shutdown or session persistence across a WAN.
Rolling upgrade can potential have a bad interaction with traditional in-memory session replication. As managed servers are shutdown and upgraded, in-memory servlet sessions will be lost if both primary and secondary are rebooted before a new request arrives for the session.
MBean Attribute:
ClusterMBean.PersistSessionsOnShutdown
Changes take effect after you redeploy the module or restart the server.
Inter-Cluster Comm Link Health Check Interval If the cluster link between two clusters goes down, a trigger will run to periodically to see if the link is restored. The duration is specified in milliseconds.
MBean Attribute:
ClusterMBean.InterClusterCommLinkHealthCheckInterval
Enable Replication Timeout Indicates if timeout should be applied to session replication calls.
MBean Attribute:
ClusterMBean.ReplicationTimeoutEnabled
Changes take effect after you redeploy the module or restart the server.
![]() |