使用Nginx或HA代理作为负载均衡器的优势


9

在我们的环境中,我们同时在不同群集上使用Nginx和HA代理。使用一个相对于另一个有优势吗?

或者,对基本的LAMP服务器群集进行负载平衡的最佳方法是什么?

Answers:


8

(我不打算采用“最佳负载平衡方式”,因为这显然是针对特定情况的。)

对于Unix上的开源HTTP负载平衡器而言,HAProxy和nginx都是绝佳的选择。在很高的层次上,首先要想到的利弊是恕我直言:

nginx:

  • 可以进行SSL卸载(通常比较麻烦)。
  • 具有丰富的内容处理模块集,即标头重写,内容压缩等。
  • 有时可以是“您唯一需要的HTTPd”,如果不需要其他HTTPd,则可以简化管理。
  • 插件可扩展性更好,fx用于路由流量。

HAProxy:

  • 与nginx相比,可以提供更高的单服务器性能(尤其是在TCP模式下运行时,已证明10gbit / s)。
  • 恕我直言,对于基本的简单HTTP负载平衡设置而言,它更易于启动和运行。
  • 更改少一些,尤其是稍旧的稳定分支经常需要一段时间,而无需更新安全性和稳定性。

但是如上所述,两者都是绝佳的选择。选择一个最舒适的方式。


1
压缩对nginx来说是一大优势,所以我最终选择了:haproxy + nginx具有简单的故障转移(haproxy)和gzip压缩(nginx)。
AlexisLê-Quôc'12

2

那真的取决于您要做什么。

Nginx可以在群集之间分配负载,也可以将特定的域路由到不同的群集。我们的nginx表现令人满意。它更像是负载路由器。

对于haproxy,我知道它会不断查询服务器状态,并会在将流量定向到服务器之前对其进行检查。它还具有一个界面,您可以在其中查看统计信息。Nginx我不认为这在任何一个分数上都有。


1

我们使用nginx作为网络服务器,对此感到非常满意。我再也不会回到Apache。不利的一面是如果您打算运行PHP。要使其在fastCGI下工作,需要一些技巧。

不要忘记将Varnish放置在缓存中!这个简单的步骤解决了很多网站被鞭打/火球的问题!


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.