[Zope-Annce] Re: Seventh version of Python Director available

Anthony Baxter anthony at interlink.com.au
Fri Oct 10 02:06:59 EDT 2003


Argh. Always include the URL.

The code is available from http://pythondirector.sourceforge.net/


>>> Anthony Baxter wrote
> 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 at interlink.com.au>
> It's never too late to have a happy childhood.

-- 
Anthony Baxter     <anthony at interlink.com.au>   
It's never too late to have a happy childhood.




More information about the Zope-Announce mailing list