负载均衡的IIS。 我应该使用NLB,还是基于linux的反向代理或其他?

对至less2-3个运行多个.NET应用程序的Windows 2008 R2 IIS Web服务器进行负载平衡最好的方法是什么? 我的select似乎是:

1)基于硬件的networking设备负载均衡器,如Cisco CSS
2)Windows NLB
3)某种基于Linux的代理,haproxy或其他

这三台服务器在vSphere场中作为虚拟机,所以我有能力在高负载时克隆实例数。 我控制vSphere主机插入的交换机(Cisco 3750),但不控制交换机/路由基础设施。

(1)太贵了,可能是我的需要矫枉过正。 我已经包含了这个,以防有人在我现有的networking工具包中做出一个狡猾的方法,我怀疑。

(2)似乎是显而易见的“内置”选项,但似乎很复杂的networking接口,多播,以及其他似乎是不必要的复杂的事情。 这也是相当愚蠢的,因为如果开始抛出500错误或者出错,它不能从池中移除主机

(3)是最有趣的select,因为它似乎提供了最大的灵活性和可定制性,但不必乱搞networking。 但是,虽然我熟悉lighttpd等的反向代理function,但我不太了解HAProxy等其他选项,这些选项可能会提供更多。

你会去哪,还有什么我没有想到的?

在Stackoverflow,我们使用HAProxy来平衡我们的Windows Server 2008 R2 IIS 7 Web服务器,并取得了巨大的成功。 我们喜欢HAProxy,并发现它非常灵活。

你在说多lessstream量? 思杰提供免费版本的Netscaler负载平衡器作为ESX,Hyper-V和XenServer的虚拟机。 它被称为Netscaler VPX Express,并提供高达5Mb的负载均衡吞吐量。 它还包括一个10用户SSL VPN许可证作为远程访问解决scheme。 我一直在内部使用,取得了巨大的成功。

这是Citrix最近发表的一篇博客文章,讨论了最近从1Mb到5Mb的免费虚拟机颠簸: http : //community.citrix.com/display/ocb/2011/02/28/NetScaler+VPX+Express+Sets+Your +networking+(即使)+免费(-er +比前+!)

多年来,我一直使用NLB的IIS Web服务,有很好的经验。 它不是真正的负载均衡器,更多的是冗余工具。 负载不能在服务器之间进行智能共享,但能够取下一台服务器进行升级并使所有设备都能正常运行,真的非常高兴。 我build议你从NLB开始,看看对你来说是否够好。 毕竟它是免费的而且非常简单。

不是一个真正的答案,但是这个(随笔?)可能会给你一些很好的背景信息来帮助你做出select: