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, RDP, 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, and features a management Web interface for monitoring and for modification of parameters.
| Tags | Networking Clustering/Distributed Networks |
|---|---|
| Licenses | GPLv3 |
| Operating Systems | POSIX |
| Implementation | Perl C++ |
Recent releases


Release Notes: This release rolls up many smaller bugfixes, functionality enhancements, and portability issues. Paths can be tweaked during the install process. The Web interface supports basic authentication. 32-bit portability was fixed. Socket handling was rewritten to prevent leakage in high-load situations.


Release Notes: The mutex code has been rewritten to greatly speed up the handling of mutexes. Logging (verbose or debugging) has been rewritten for type safety. A bug involving incorrect processing of HTTP messages was fixed. Several optimizations were added. The startscript xrctl was enhanced.


Release Notes: This version fixes a bug where network sockets would be consumed but not closed. The bug was triggered in some situations where Crossroads could not connect to a previously available back end.


Release Notes: This release has improvements for high-load production environments. The amount of logging was turned down, anti-CPU-hogging measures were introduced, and a potential cause of crashes during peak loads was fixed. The documentation was updated.


Release Notes: This version fixes a number of bugs, features a rewrite of the "stored-ip" dispatcher, introduces counting of back end errors for diagnostic purposes, and features updated documentation.
A lightweight library containing a number of classes and functions to ease the task of programming GTK+ programs with C++ in POSIX environments.