Pega Platform high availability can be configured to run on Java Platform, Enterprise Edition (Java EE) application servers, such as those provided by WebSphere, Weblogic, or JBoss. These enterprise offerings provide services and packaged components that can add other aspects of high availability when properly configured. The primary advantage is that enterprise application servers typically support redundant message queues and buses, which can allow Pega Platform services and listeners to continue during initiated and uninitiated outages.
The configuration and management details for each platform vary, but the concepts remain the same. Pega Platform servers must be configured as a cluster so that there are two or more instances that are eligible to process work from any given queue or bus. During normal operation, only one Pega Platform server should be used to process these requests, and other Pega Platform servers in the cluster should be set up to address the queue or bus.
During failover conditions, the application server management utilities can be used to reconfigure queue destinations and bus listeners.
- If an outage is initiated by an administrator (for example, if it is planned), then the administrator can update the configuration details for the Pega Platform server when modifying the load balancer to remove it from service.
- If the outage is uninitiated, the Pega Platform server that is down no longer processes work while other Pega Platform servers in the cluster continue processing queue items.
In either situation, no loss of work should occur and work continues to be processed (although it might be slower due to a loss of a Pega Platform server). Other bus members might need to be enabled if the system is configured to have a single active Pega Platform server that is processing work.
- Configuring your system for passivation and activation
Passivation and activation help with system performance and high availability. Passivation allows a requestor, service, or clipboard page to be saved into storage and reactivated later, helping to free up JVM memory.