Crossroads is a daemon running in user space, and features extensive configurability, polling of back ends using wake up calls, status reporting, many algorithms to select the 'right' back end for a request (and user-defined algorithms for very special cases), and much more. Crossroads is service-independent: it is usable for any TCP service, such as HTTP(S), SSH, SMTP, and database connections. In the case of HTTP balancing, Crossroads can provide session stickiness for back end processes that need sessions, but aren't session-aware of other back ends. Crossroads can be run as a stand-alone daemon or via inetd.
License: GNU General Public License v3
Changes:
This version is a complete rewrite. It is now a multi-threaded program (as opposed to a forking daemon), which greatly enhances performance and decreases system load. The balancer is now configured via the command line (as opposed to a configuration file). This version is beta code until proven in the field. Historic stable 1.xx versions are still available.
More...