httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jim Jagielski <...@jaguNET.com>
Subject Re: [users@httpd] mod_proxy_balancer, balancer_manager questions
Date Thu, 13 Sep 2012 18:51:27 GMT

On Sep 13, 2012, at 2:02 PM, Colin Murtaugh <cmurtaugh@gmail.com> wrote:

> Hi --
> 
> I'm trying to set up a pair of tomcat servers behind apache using mod_proxy_balancer.
 I'm using Apache 2.4.3 that I built a couple of days ago on Solaris. 
> 
> I see in the 2.4 docs that balancer settings can now be persistent after restarts.  I
assume that this refers to changes to settings made via the balancer-manager UI, but I can't
seem to get it to work.
> 
> Here's my config: 
> 
> <Proxy balancer://testcluster growth=5>
>     BalancerMember http://localhost:8861 timeout=5 keepalive=on
>     BalancerMember http://localhost:8871 timeout=5 keepalive=on
> </Proxy>
> 
> ProxyPass /test balancer://testcluster
> ProxyPassReverse /test balancer://testcluster
> 
> <Location /balancer-manager>
>     SetHandler balancer-manager
> </Location>
> 
> Load-balancing works as expected, but if I edit one of the two nodes via balancer-manager
to set its status to 'disabled', the status returns to Ok after I restart apache. 
> 
> Similarly, if I add a new worker to the cluster via balancer-manager, it's gone after
a restart.  In both of these cases, I expected the settings to be as I left them before the
restart. 
> 
> Am I misunderstanding how the settings persistence is supposed to work, or is there something
else I need to do in order to get the settings to be saved?
> 

because these settings are stored in shared memory, post config,
and changes made won't persist a restart or reboot since Apache
goes back the honoring the httpd.conf file settings.

If you need the updates to persist, you'll need to tell
mod_proxy to write out the shared memory data to a file, which
is then read and honored during the restart.

> Additional question:
> 
> I have the timeout set to 5 seconds; if the back-end service takes longer than 5 seconds
to finish, the proxy does abandon the request as expected, and I get an error in the browser.
 Is there any way to have the proxy, when the back-end times out, retry the request against
another one of the nodes? 

If the back-end has started a reply, then there's no way to
retry against someone else. Is the timeout due to the backend
being slow or because it's down?
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message