Red Hat Training

A Red Hat training course is available for JBoss Enterprise Application Platform Common Criteria Certification

6.3. Clustering

A cluster is a group of linked systems (nodes) working closely together to increase efficiency. Clustering enables the execution of applications on several parallel servers. In a JBoss Enterprise Application Platform cluster, each node is a JBoss server instance. Several JBoss server instances are grouped together to form a cluster, also known as a "partition".
JBoss Enterprise Application Platform implements two different cluster configurations: a failover cluster and a load-balanced cluster.
In a failover cluster scenario, a single node serves requests from clients. In the event that the node fails, another node in the cluster continues to service requests.
In a load-balanced cluster scenario, multiple nodes serve requests from clients. In this scenario, a single address is serviced with the power of multiple systems.
In both cases, the server state is distributed across different servers. If any of the servers fails, the application is still accessible through other active cluster nodes.
Communication between the different cluster nodes ensures the data consistency of the following information:
  • Applications - an application deployed on one node is replicated to the other nodes of the cluster (farming deployment)
  • State of HTTP sessions, EJB 3.0 session beans, EJB 3.0 entity beans, as well as Hibernate persistence objects (distributed state replication service using JBoss Cache)
  • State of HTTP sessions and EJB 2.x session beans (distributed state replication service using HASessionState MBean)
  • JMS queues.