Pen is TCP load balancing software that distributes incoming connections among multiple servers to improve efficiency and prevent server overload.
One of the best features of Pen is its load balancing algorithm, which keeps track of clients and tries to send them back to the server they visited last. The client table has a number of slots, which can be set (default is 2048) through command-line arguments. Once the table is full, the least recently used one will be removed to make room for a new one. This approach is far superior to a simple round-robin algorithm that sends a client to different servers, even if it connects repeatedly. Using this method, modern web applications that maintain state between connections could be affected.
Pen is designed to ensure that a server farm is always available, even when individual servers are brought down for maintenance or reconfiguration. When a server is detected as unavailable, Pen automatically scans for another server to achieve fair failover.
In the latest release, Pen writes weight information in its configuration file, which is beneficial for users. Weight-based server selection now works better for small numbers of connections.
In conclusion, Pen is a reliable load balancing software, offering high availability, scalability, and fairness in failover. The possibility of running it on multiple servers eliminates the final single point of failure, making it an ideal option for users.
Version 0.17.3: N/A