Configuring Arbortext Publishing Engine > Preparing to Configure Arbortext Publishing Engine > Load Balancing and Clustering
  
Load Balancing and Clustering
Load balancing and clustering can improve scalability, availability, fail-over capabilities and performance.
Load balancing distributes the work load to multiple identical servers based a predefined load-balancing policy. It can be implemented using hardware, software, or a combination of both. Two popular methods use DNS round robin distribution or server hardware to direct network traffic using some kind of network device.
Choosing a load balancing approach depends on existing infrastructure, cost, and demand, among other considerations. You will need to research specific hardware and software solutions for implementing load balancing.
Clustering is implemented as software installed on a group of servers organized into clusters. It shares the work load according to the software protocol.
Clustering can support features not available with server load balancing, such as persistent session data across multiple server nodes. Clustering can be more difficult to implement.
Arbortext Publishing Engine can be deployed using either a server load balancing approach or clustering, except for those that use web farms. Arbortext Publishing Engine should not be clustered in a group of virtual servers running on a single physical server.
It's easier to implement load balancing for Arbortext Publishing Engine as it does not specifically need the session data used in clustering or sticky routing.
Whenever Arbortext Publishing Engine is deployed on multiple physical servers, regardless of the method you choose, all servers running Arbortext Publishing Engine must have completely identical installation trees with all customizations in place.
In Apache Tomcat, load balancing can be implemented by directing requests to the provided servlet Balancer. The Balancer servlet requires some Java code rules to implement a useful load balancing scheme. Refer to the Balancer servlet documentation for more information. In Tomcat, clustering requires programming Java code, so its implementation is more difficult. Choose clustering only if you need the additional benefits for other reasons, as they are not used by Arbortext Publishing Engine.