我们有一个网站在IIS上使用DNN在ASP.NET中构build。 目前我们尝试为两台服务器configurationnetworking负载均衡。 服务托pipe服务提供商告诉我们这样做已经足够了,但是我们似乎碰到了一堵砖墙:
借助三向负载均衡(即Web场),单个系统将检查哪些服务器可用。 如果服务器closures,它会将请求转发到其他服务器。
以上是对networking负载平衡的限制的正确假设,导致经典网上农场作为唯一的解决scheme,还是有一些托pipe服务提供商可以configuration,以防止这种行为,让我们只坚持两个系统?
实际上你已经达到了NLB的一个典型限制。 Windows NLB群集只能检查节点本身是否可用,并且不能检查实际应用程序是否仍在运行。 最终,您需要的是对应用程序进行某种types的运行状况检查,这可以通过物理负载平衡器或软件负载平衡器(例如Microsoft 应用程序请求路由(ARR))来完成 。
另一个有点新的select是基于云的负载平衡器,例如Rackspace提供的负载平衡器。 这为您提供了物理负载平衡器的许多function,而无需实施物理硬件的成本。
希望有所帮助。
编辑:有一种方法可以让NLB执行健康检查,但是,它仍然需要多达第三台服务器。 System Center Operations Manager具有可以监视应用程序的pipe理包。 关于这方面的细节可以在这里find。 如果您要经历添加这样的事情的麻烦,那么您最好还是看看可以执行必要的健康检查的实际负载均衡器的好处。
如果您有第三个系统(或两个)可以根据后端主机的使用情况分配负载,则可以检查更高层(应用程序)上的可用性,而不仅仅是networking。 因为每个系统只有一个angular色,负载平衡器只负载均衡,不需要其他任何东西,所以更容易。