Seventh version of Python Director available
I'm happy to announce the seventh release of Python Director. Python Director is a pure python TCP load balancer. It takes inbound TCP connections and connects them to one of a number of backend servers. Despite the version numbering (which looks scary), this is quite mature software - it's been in heavy use for well over 12 months, balancing FastCGI and HTTP connections to our backend Zope servers. Features: * async i/o based, so much less overhead than fork/thread based balancers. Can use either twisted or python's standard asyncore library (twisted is recommended, and asyncore support will be removed in a future version). * Multiple scheduling algorithms (random, round robin, leastconns, leastconns+roundrobin) * If a server fails to answer, it's removed from the pool - the client that failed to connect gets transparently failed over to a new host. * xml based configuration file * seperate management thread that periodically re-adds failed hosts if they've come back up. * optional builtin webserver for admin * webserver has methods suitable for both interactive and automated systems Changes from 0.0.6 to 0.0.7 - You can specify a hostname of '*' to the listen directive for both the scheduler and the administrative interface to mean 'listen on all interfaces'. Considerably more obvious than '0.0.0.0'. Thanks to Andrew Sydelko for the idea. - New "leastconnsrr" scheduler - this is leastconns, with a roundrobin as well. Previously, leastconns would keep the list of hosts sorted, which often meant one system got beaten up pretty badly. - Twisted backend group selection works again. - The client address is now passed to the scheduler's getHost() method. This allows the creation of "sticky" schedulers, where a client is (by preference) sent to the same backend server. The factory function for schedulers will change to allow things like "roundrobin,sticky". -- Anthony Baxter <anthony@interlink.com.au> It's never too late to have a happy childhood.
participants (1)
-
Anthony Baxter