我们目前正在开发几个网站,使用两台Web前端服务器(使用apache和tomcat / jboss),在它们前面有一个负载平衡器。 由于我是程序员,而不是系统pipe理员,所以我只能猜测一个体面的硬件负载均衡器能够做什么。 我想知道,如果一个硬件负载均衡器可以检查HTTP状态代码,所以如果另一个服务器因为维护(现在发送一个503 HTTP错误代码)而导致stream量只能被redirect到一个服务器。
谢谢!
本
是的,几乎所有的负载平衡器都会这样做。 大多数负载平衡器也将走得更远,并且如果它停止服务,则将死HTTP服务器停止服务:
编辑:另外,良好的负载平衡器有一个简单的方法将服务器设置为维护模式,即负载平衡器将停止向该服务器发送新请求,并在服务器停止stream量时在其UI中显示。 然后,您可以在服务器上自由执行所需的维护,然后重新投入使用。
此外,大多数负载平衡器都有一个紧急服务器的概念,即如果所有常规的HTTP服务器都closures了,所有的stream量将被发送到您的局域网上的指定应急服务器,然后可以传递一个静态的“我们维护,以后回“页面。
土狼点做出很好的低端负载平衡器家电恕我直言。 还有许多其他的低端负载平衡器供应商。 梭子鱼就是一个例子。 “低端”在这个背景下并不是消极的,它只是把市场分成两部分:
如果OP在内部没有系统pipe理员技能,那么购买低维护的设备就很有意义。 如果你愿意并能够build立一个Unix服务器,那么看看这个post 。 如果你在Microsoft Windows上,那么微软应用程序请求路由版本1或2(testing版)可能是很好的解决scheme(我不太了解它们)。
Apache / tomcat当然可以 – 查看“fail_on_status”的文档。
BigIP负载平衡器可以做到这一点。 但是你不需要得到一个大的硬件LB来获得良好的性能。 看看nginx和清漆。 清漆专门被写为一个caching负载平衡器,是高度可configuration的。 http://varnish.projects.linpro.no/