JBoss.orgCommunity Documentation

JBoss AS 5.1 Clustering Guide

High Availability Enterprise Services with JBoss Application Server Clusters

Sep 2009


I. Introduction and Core Services
1. Introduction and Quick Start
1.1. Quick Start Guide
1.1.1. Initial Preparation
1.1.2. Launching a JBoss AS Cluster
1.1.3. Web Application Clustering Quick Start
1.1.4. EJB Session Bean Clustering Quick Start
1.1.5. Entity Clustering Quick Start
2. Clustering Concepts
2.1. Cluster Definition
2.2. Service Architectures
2.2.1. Client-side interceptor architecture
2.2.2. External Load Balancer Architecture
2.3. Load-Balancing Policies
2.3.1. Client-side interceptor architecture
2.3.2. External load balancer architecture
3. Clustering Building Blocks
3.1. Group Communication with JGroups
3.1.1. The Channel Factory Service
3.1.2. The JGroups Shared Transport
3.2. Distributed Caching with JBoss Cache
3.2.1. The JBoss AS CacheManager Service
3.3. The HAPartition Service
3.3.1. DistributedReplicantManager Service
3.3.2. DistributedState Service
3.3.3. Custom Use of HAPartition
4. Clustered Deployment Options
4.1. Clustered Singleton Services
4.1.1. HASingleton Deployment Options
4.1.2. Determining the master node
4.2. Farming Deployment
II. Clustered Java EE
5. Clustered JNDI Services
5.1. How it works
5.2. Client configuration
5.2.1. For clients running inside the application server
5.2.2. For clients running outside the application server
5.3. JBoss configuration
5.3.1. Adding a Second HA-JNDI Service
6. Clustered Session EJBs
6.1. Stateless Session Bean in EJB 3.0
6.2. Stateful Session Beans in EJB 3.0
6.2.1. The EJB application configuration
6.2.2. Optimize state replication
6.2.3. CacheManager service configuration
6.3. Stateless Session Bean in EJB 2.x
6.4. Stateful Session Bean in EJB 2.x
6.4.1. The EJB application configuration
6.4.2. Optimize state replication
6.4.3. The HASessionStateService configuration
6.4.4. Handling Cluster Restart
6.4.5. JNDI Lookup Process
6.4.6. SingleRetryInterceptor
7. Clustered Entity EJBs
7.1. Entity Bean in EJB 3.0
7.1.1. Configure the distributed cache
7.1.2. Configure the entity beans for caching
7.1.3. Query result caching
7.2. Entity Bean in EJB 2.x
8. HTTP Services
8.1. Configuring load balancing using Apache and mod_jk
8.1.1. Download the software
8.1.2. Configure Apache to load mod_jk
8.1.3. Configure worker nodes in mod_jk
8.1.4. Configuring JBoss to work with mod_jk
8.2. Configuring HTTP session state replication
8.2.1. Enabling session replication in your application
8.2.2. HttpSession Passivation and Activation
8.2.3. Configuring the JBoss Cache instance used for session state replication
8.3. Using FIELD level replication
8.4. Using Clustered Single Sign On
8.4.1. Configuration
8.4.2. SSO Behavior
8.4.3. Limitations
8.4.4. Configuring the Cookie Domain
9. JBoss Messaging Clustering Notes
9.1. Unique server peer id
9.2. Clustered destinations
9.3. Clustered durable subs
9.4. Clustered temporary destinations
9.5. Non clustered servers
9.6. Message ordering in the cluster
9.7. Idempotent operations
9.7.1. Clustered connection factories
III. JGroups and JBoss Cache
10. JGroups Services
10.1. Configuring a JGroups Channel's Protocol Stack
10.1.1. Common Configuration Properties
10.1.2. Transport Protocols
10.1.3. Discovery Protocols
10.1.4. Failure Detection Protocols
10.1.5. Reliable Delivery Protocols
10.1.6. Group Membership (GMS)
10.1.7. Flow Control (FC)
10.1.8. Fragmentation (FRAG2)
10.1.9. State Transfer
10.1.10. Distributed Garbage Collection (STABLE)
10.1.11. Merging (MERGE2)
10.2. Key JGroups Configuration Tips
10.2.1. Binding JGroups Channels to a Particular Interface
10.2.2. Isolating JGroups Channels
10.2.3. Improving UDP Performance by Configuring OS UDP Buffer Limits
10.3. JGroups Troubleshooting
10.3.1. Nodes do not form a cluster
10.3.2. Causes of missing heartbeats in FD
11. JBoss Cache Configuration and Deployment
11.1. Key JBoss Cache Configuration Options
11.1.1. Editing the CacheManager Configuration
11.1.2. Cache Mode
11.1.3. Transaction Handling
11.1.4. Concurrent Access
11.1.5. JGroups Integration
11.1.6. Eviction
11.1.7. Cache Loaders
11.1.8. Buddy Replication
11.2. Deploying Your Own JBoss Cache Instance
11.2.1. Deployment Via the CacheManager Service
11.2.2. Deployment Via a -service.xml File
11.2.3. Deployment Via a -jboss-beans.xml File