使用软件负载平衡与硬件负载平衡器的经验?

时间:2008-10-03 11:04:18

标签: asp.net scalability web-farm

我目前在我的日常工作中负责的ASP.NET应用程序在其在单个服务器内扩展的能力方面达到了极限。显然,我们正在努力将会话移出流程和测试,并希望部署日期临近。我想借鉴人们在Windows中使用内置负载平衡与家用解决方案(例如Baracudda,Coyote Point,F5等)的经验。你是从一个开始并转移到另一个并为什么?

提前感谢的想法和建议......

4 个答案:

答案 0 :(得分:2)

一些想法

  • WLBS通常“足够好”让你开始使用NLB。然而,就像任何伟大的工程师一样 - 你需要“衡量才能知道”
  • 它不仅仅是扩展其软冗余或硬冗余。我们经常在VM之间使用NLB来为我们提供软冗余。
  • NLB同样适用于后端网络和前端网络
  • 加快硬件加速,为您带来新的运营成本。新培训专业支持,升级等。
  • 寻找硬件加速,为您提供比NLB更多的功能,例如DDoS保护,SSL,压缩,缓存,内容交换,连接聚合,缓冲。
  • 教育Devs& Ops SE关于硬件加速的好处,一个伟大的设计可以合并网络操作和应用程序开发之间的界限。
  • 通过减少我们的GC时间,它自己的硬件缓冲使我们的ASP.NET快了大约30%。
  • 内容切换可以让您透明地合并或迁移不同的系统。我们合并了MSDN&使用这种技术将MSDN2平台整合到一个url空间中。
  • 会话粘性是一把双刃剑 - 谨慎使用 - 再次无法取代良好的工程 - 衡量和测试一切

我们在网络中使用WLBS和NLB - 成本通常会推动对话。将它们视为工具箱中的工具,了解它们的细微差别,成本模型等。

答案 1 :(得分:2)

我在负载平衡解决方案方面有一些经验,但这实际上取决于您的网络和软件是如何设计的,这是最适合您的解决方案。

就我遇到的解决方案而言:

Windows中的内置负载平衡适用于大多数情况,但您需要确保应用程序可以正确处理会话(如果它们没有粘性)。等

我使用F5产品,主要是作为缓存解决方案,但它们对我们来说过于复杂。 我们目前正在离开它们,因为开发人员没有正确使用它们,因为它们太复杂了。 (请注意这些是相当古老的F5产品。)

我们目前正在试用Foundry的硬件负载平衡器,我们可能会选择它们,因为它们适合我们的网络架构。 (这很复杂。)。

所以我想说,如果你想要一个简单的解决方案,请在Windows中使用负载均衡(如果你的应用程序能够正常运行。)。

如果不使用更复杂的东西。

无论您使用哪种负载均衡器,您的架构都会变得更加复杂。所以要仔细计划和测试。

答案 2 :(得分:2)

设置apache mod_proxy集群。 http://www.howtoforge.com/high_availability_loadbalanced_apache_cluster

比你想象的更容易,价格的一小部分

答案 3 :(得分:0)

F5附带SSL加速芯片。 SSL加密&使用应用程序服务器进行解密(使用CPU非常密集)会降低实际请求的处理速度。 通常,SSL流量在F5处终止,并且正常的http流量将发送到应用程序服务器。这在负载均衡器处称为SSL卸载。 自从F5做这个SSL加密&使用芯片(硬件)解密它比普通加密快30到40倍。解密时间。