On Aug 16, 2004, at 6:54 AM, Pier Fumagalli wrote:

On 11 Aug 2004, at 17:14, Mladen Turk wrote:

Hi all,

We've finished the initial development of extended mod_proxy.
Since the development took place at jakata-tomcat-connectors,
the source code can be found under ajp/proxy.

Here is the list of major features added:
3. Added new module proxy_balancer

What's wrong with:

ProxyPassReverse / http://localhost:8888/
ProxyPreserveHost On
RewriteMap hosts rnd:/opt/apache/conf/tables/hosts.map
RewriteRule "^/(.*)" "${hosts:live}/$1" [P,L]

It's in there already, and it works great (I even have a couple of CGIs reading and building up that table, enabling, disabling and prioritizing hosts).

http://wiki.apache.org/cocoon/ApacheModProxy
http://wiki.apache.org/cocoon/LoadBalancingWithModProxy

Having a human weigh or prioritize hosts may work well in a small environment, but it is too much to manage in a large one. Besides, while random selection is a decent algorithm under certain circumstances, mod_proxy lacks the insight into the global state of resources to make truly intelligent resource-based allocation decisions.


I haven't had the time lately, but you (all) are welcome to dissect the mod_backhand (Apache 1.3) module and pull the resource collection and decision making framework out and put in into mod_proxy for Apache 2. The algorithms therein are flexible, proven and even extensible. We have seen several large architectures use m_b with great success in front of even ISS servers and Java application servers of all types.

http://www.backhand.org/mod_backhand/

// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// OmniTI Computer Consulting, Inc. -- http://www.omniti.com/
// Ecelerity: fastest MTA on Earth



Reply via email to