Why Redis is mandatory for a highly available deployment
To ensure high availability in a multiple ProcessRobot Servers configuration, the use of Redis Servers is necessary.
Suppose a load balancer only configuration between ProcessRobot Servers is made (without Redis):
In this configuration, high availability will not be possible (as a client-server system setup is only as available as its weakest link) - which in this case is a problem since the communication between multiple ProcessRobot Servers is not handled when not using Redis Server(s). For example, if a ProcessRobot Server fails, all information will be lost as it will not be stored in Redis.
In other words, the use of a load balancer is only responsible for achieving a scalable infrastructure (meaning that communication between client tools and ProcessRobot Servers will be managed when server capacity and network limits are reached/exceeded).
However, in order to create a high availability setup, you would need Redis servers (in a leader follower mode through replication) to ensure the integrity of ProcessRobot Servers state, and thus ensuring the uninterrupted execution of processes in case of a disaster as illustrated in this diagram:
For additional information, please refer to the article related to ProcessRobot architecture and security.