Load balancers distribute workload across the servers in the data centers. They redirect requests to other servers in case of server failures or network connectivity issues.
To handle the high volume of messaging requests from your trading partners, you can use a load balancer for a high availability deployment. The load balancer serves the following functions:
- Load balancing: To distribute the workload across a set of servers to ensure that servers are not overloaded.
- Failover: If a server fails, the user is directed to another server. Failover ensures that the system is still available when there is a failure of a server.
Load balancers verify connections between nodes in a cluster and between data centers. Select a load balancer that can monitor the status of the components in your system. If a node that is being checked does not respond within a specified timeout period, or the status of a node indicates that performance is degraded, the load balancer can redirect the traffic to another node. Any load balancer that meets your requirements is supported.
Global Mailbox uses the following types of load balancers:
- Global load balancer: Directs a trading partner to the closest available data center and monitors data centers for availability. Configure the global load balancer to send requests to the closest data center to ensure that network latency is not an issue (geographical load balancing). This load balancer typically uses DNS resolution to route users to the closest data center.
- Local load balancer: Manages local transactions to balance the workload across all servers within that data center and detect problems with a component. Within each data center, there is a local load balancer, which provides load balancing to the Sterling B2B Integrator and Sterling File Gateway services (protocols such as FTP, SFTP, Sterling Connect:Direct®, and myFileGateway). It spreads the load across several servers that are part of the Global Mailbox cluster in that data center.
You can have more advanced monitoring for the protocols that your system supports if this capability is supported by your load balancer. For example, all load balancers are capable of monitoring client connections to an FTP server (that is, the server is started and accepting connections). However, this capability might not be sufficient enough to validate that the FTP server is accepting new files or is able to serve files. You can do advanced monitoring with some load balancers to ensure successful FTP GET and FTP PUT operations.
If your load balancer supports monitoring FTP GET, create a file that never expires in Global Mailbox. Configure the load balancer to download the file at a regular interval. With this configuration, the load balancer continually validates that Cassandra and the shared disk are working on that node.
The special file for which the FTP GET request is sent is created by the health check utility. For information about the utility, see healthCheckUtility script.