Enterprise configuration of high availability

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.

Pega Platform client-side listeners that use URLs should reside on a host and port that is a load-balancer. Using a load balancer eliminates the risk of looking for a host and port that is no longer there because the load balancer figures out which back-end node is alive.

Listeners that are configured as MBeans need to be managed from the application server. If a Pega Platform server is to undergo an initiated shutdown, the application server must be configured so that the server does not attempt any MBean invocations on that Pega Platform server. This is because the Pega Platform server is not able to process the request.

If the target server of an MBean invocation has experienced an uninitiated shutdown, the MBean invocation fails. Depending on the application server configuration and the Pega Platform listener configuration, this invocation might either be placed back in the queue or be lost.

Because of the complication in configuring the Pega Platform high availability edition on enterprise application servers, organizations should plan to set up the system in conjunction with Pegasystems Consulting. The Pegasystems Services team has access to resources that can help with configuring specific platforms for maximum availability.