使用任何LB for IIS网站在加权循环中进行负载平衡

时间:2015-04-23 15:00:50

标签: c# asp.net sql-server load-balancing

我在两个独立的服务器上运行相同的Web应用程序(asp.net)。

我现在想要实现的是创建一个所有用户最初都会被定向到的aspx页面。在我的应用程序中,我能够检索当前连接到每个服务器的用户数量。我还添加了一个设置,我可以设置每个服务器的重量。还有服务器URL' s。

我现在需要的是根据服务器的权重在这些服务器之间拆分用户的机制或方法。

我已尝试过归档here的解决方案,但我似乎并不了解应用的解决方案。

请指出正确的方向或详细说明解决方案。

1 个答案:

答案 0 :(得分:2)

与评论中的讨论一样,我发现您需要拥有IIS网站的负载均衡器,您有2个服务器(节点)。您正在寻找解决方案。

要解决此问题,您必须使用第3台服务器接收请求并路由到休息2。第三台服务器是负载均衡器,它将充当反向代理 - 它将公共面向IP映射到您的域。因此,当最终用户访问该域时,负载均衡器(LB)将获得请求,LB具有配置,使用哪种算法。考虑HAProxy,它有大量的算法 - LRU,RoundRobin,IP哈希等。基于它,它将请求传输到后端节点(2个IIS网络服务器之一)。注意:那些节点不必面向公共IP,因为LB的工作是将请求转移到内部backnet IP并获得响应,发送给最终用户。这是,没有人可以访问实际的IIS服务器的网站。

我之前已经介绍了HAProxy - 以下是链接 - https://arindamnayak1.wordpress.com/2015/04/23/haproxy/

在那里你可以看到HAProxy的替代品,在参考部分,它有一些链接,显示如何设置它。

以下是其中一个的快速链接 - https://www.digitalocean.com/community/tutorials/an-introduction-to-haproxy-and-load-balancing-concepts

即使SO使用HAProxy - http://brokenhaze.com/blog/2014/03/25/how-stack-exchange-gets-the-most-out-of-haproxy/