| Links Top Level Elements Executors Connectors Containers Nested Components Cluster Elements Global Settings | | Introduction |  | 
  
  The tomcat cluster implementation provides session replication, context attribute replication and
  cluster wide WAR file deployment.
  While the Clusterconfiguration is fairly complex, the default configuration will work
  for most people out of the box. 
  The Tomcat Cluster implementation is very extensible, and hence we have exposed a myriad of options,
  making the configuration seem like a lot, but don't lose faith, instead you have a tremendous control
  over what is going on. | 
 | Engine vs Host placement |  | 
  
   You can place the <Cluster>element inside either the<Engine>container or the<Host>container.Placing it in the engine, means that you will support clustering in all virtual hosts of Tomcat,
   and share the messaging component. When you place the
 <Cluster>inside the<Engine>element, the cluster will append the host name of each session manager to the managers name so that two contexts with 
   the same name but sitting inside two different hosts will be distinguishable. | 
 | Nested Components |  | 
  Manager: The session manager element identifies what kind of session manager is used in this cluster implementation.
    This manager configuration is identical to the one you would use in a regular
 <Context>configuration.The default value is the
 org.apache.catalina.ha.session.DeltaManagerthat is closely coupled with
    theSimpleTcpClusterimplementation. Other managers like theorg.apache.catalina.ha.session.BackupManagerare/could be loosely coupled and don't rely on theSimpleTcpClusterfor its data replication. Channel: The Channel and its sub components are all part of the IO layer 
    for the cluster group, and is a module in it's own that we have nick named "Tribes"
 Any configuring and tuning of the network layer, the messaging and the membership logic
    will be done in the channel and its nested components.
    You can always find out more about Apache Tribes
 Valve: The Tomcat Cluster implementation uses
 Tomcat Valvesto
    track when requests enter and exit the servlet container. It uses these valves to be able to make
    intelligent decisions on when to replicate data, which is always at the end of a request. Deployer: The Deployer component is the Tomcat Farm Deployer. It allows you to deploy and undeploy applications
    cluster wide.
 ClusterListener: ClusterListener's are used to track messages sent and received using the
 SimpleTcpCluster.
    If you wish to track messages, you can add a listener here, or you can add a valve to the channel object. | 
 | Deprecated configuration options |  | 
  
    Deprecated settings: In the previous version of Tomcat you were able to control session
       manager settings using manager.<property>=value.
       This has been discontinued, as the way it was written interfers with 
       the ability to support multiple different manager classes under one cluster implementation,
       as the same properties might have the different effect on different managers.
   | 
 | Attributes |  | 
  | SimpleTcpCluster Attributes |  | 
  | Attribute | Description | 
|---|
 | className | The main cluster class, currently only one is available,
         org.apache.catalina.ha.tcp.SimpleTcpCluster |  | channelSendOptions | The Tribes channel send options, default is 8.This option is used to set the flag that all messages sent through the 
         SimpleTcpCluster uses. The flag decides how the messages are sent, and is a simple logical OR.
 
 Some of the values are:|  |  |  |  |  | 
        int options= Channel.SEND_OPTIONS_ASYNCHRONOUS | 
                     Channel.SEND_OPTIONS_SYNCHRONIZED_ACK | 
                     Channel.SEND_OPTIONS_USE_ACK;
       |  |  |  |  |  | 
 Channel.SEND_OPTIONS_SYNCHRONIZED_ACK = 0x0004
 Channel.SEND_OPTIONS_ASYNCHRONOUS = 0x0008
 Channel.SEND_OPTIONS_USE_ACK = 0x0002So to use ACK and ASYNC messaging, the flag would be
 10 (8+2) or 0x000B
 |  | heartbeatBackgroundEnabled | Enable this flag don't forget to disable the channel heartbeat thread.
       |  | doClusterLog | Deprecated since 6.0.0 Possible values are trueorfalseValue is inherited from Tomcat 5.5 and has no official meaning.
         to configure logging, use the standard tomcat logging configuration.
 |  | clusterLogName | Deprecated since 6.0.0 
        Value is inherited from Tomcat 5.5 and has no official meaning.
         to configure logging, use the standard tomcat logging configuration.
       | 
 | 
 | 
 |