我们的前端有apache2代理服务器,后端运行两个应用服务器,其中一个程序服务器挂起并重新启动,这需要2-4分钟,在此期间,所有其他应用服务器也会挂起,因为它们通过同一个代理服务器。
下面是Apache代理配置:
ProxyPass /app1 http://backend1:8080/
ProxyPassReverse /app1 http://backend1:8080/
ProxyPass /app2 http://backend2:8080/
ProxyPassReverse /app2 http://backend2:8080/
ProxyPass /app3 http://buggy-backend3:8080/
ProxyPassReverse /app3 http://buggy-backend3:8080/ 是否有任何apache指令,检查后端是否没有响应,应该忽略它,并继续为其他命令服务。
会很感激你的帮助。
瓦棉
发布于 2013-01-23 17:16:59
我认为你想使用类似want的东西,它正是为这类事情而设计的。apache mod_proxy_balancer也可以做您需要的事情。
编辑:我怀疑apache挂起的原因是超时设置为相对较大的数量,apache将运行等待挂起的应用服务器的子进程。
ProxyTimeout将为您提供一种使apache更快地超时后端的方法。
您还可以考虑增加允许apache生成的孩子的数量,并增加该数量。
https://serverfault.com/questions/471793
复制相似问题