tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Graham Leggett <minf...@sharp.fm>
Subject Re: cvs commit: jakarta-tomcat-connectors/ajp/proxy mod_proxy.c
Date Tue, 03 Aug 2004 14:38:04 GMT
Mladen Turk wrote:

> Here is what I meant:
> 
> 
> ProxyPass /url balancer:number//[stickysessionname | none]/[nofailover]
> 
> ProxyRemote balancer:number <ajp|http>://host-1(lbfactor)
> ProxyRemote balancer:number <ajp|http>://host-2(lbfactor) ...
> ProxyRemote balancer:number <ajp|http>://host-n(lbfactor)
> 
> And (eventually) ...
> 
> ProxyPassReverse /url balancer:number
>  
> 
>>A load balancing module should be using it's own directive for this, 
>>not ProxyPassReverse.
>>
> 
> 
> You may have other ideas perhaps.
> Feel free to share them. It's still in early design stage :)

:)

I have been mulling this over in my head for a bit. What do you think of 
defining a group of load balancing servers that serve requests, such as:

<ProxyBalancer myCluster>
   BalancerMember host1:port [balancer params]
   BalancerMember host2:port [balancer params]
</ProxyBalancer>

Later in the config we then do this:

ProxyPass /myWebapp ajp://myCluster/myWebapp

The balancer params could include things like:

BalancerMember host:port loadfactor=12, dynamic=true

The "dynamic=true" could mean "the backend server(s) will return headers 
that add, or gracefully remove servers from this cluster. Allow this to 
happen".

The balancer app would be technically independant of protocol, however 
some protocols may want to provide the balancer with more information 
about the cluster state. The balancer might provide hooks for this, or 
there might be an official way of updating the balancer scoreboard 
directly from within proxy_http or proxy_ajp.

A simplest case of balancer, in other words in the case where you've 
said "connect to host myCluster" but myCluster has not been defined, 
fall back to looking up "myCluster" in DNS.

Regards,
Graham
--


Mime
View raw message