JMS communications is subscription-based. All agents subscribe to all topics and filter the list with their agent ID (which is one reason that agents should have unique IDs).
For JMS-based communications, agents can be configured in several ways:
Approach 2 is optimal because workloads are distributed randomly and transparently. If a server cannot keep up with the workload, work is queued and no additional configuration is required.
HTTP/HTTPS server-agent communications are handled by a standard load balancer. Authentication is run on every request; any server can run validation for any request.
In case of server failure, user-server authentication must be redone unless the ‘remember me’ cookie is used.