ロードバランサーとしてNginxまたはHAプロキシを使用する利点


9

私たちの環境では、異なるクラスター上にNginxとHAプロキシの両方を使用しています。どちらか一方を使用する利点はありますか?

または、基本的なLAMPサーバークラスターの負荷分散を行う最善の方法は何ですか?

回答:


8

(明らかに、状況に固有であるため、「負荷分散の最良の方法」には触れません。)

HAProxyとnginxはどちらも、Unix上のオープンソースHTTPロードバランサーに最適です。非常に高いレベルで、最初に頭に浮かぶ長所と短所は私見です:

nginx:

  • SSLオフロードを実行できます(多くの場合非常に重要です)。
  • ヘッダーの書き換え、コンテンツの圧縮など、コンテンツ処理モジュールの豊富なセットがあります。
  • 他のHTTPdが必要ない場合は、「必要な唯一のHTTPd」になり、管理が簡単になります。
  • プラグイン、ルーティングトラフィック用のfxでより拡張可能。

HAProxy:

  • nginxよりも高い単一サーバーパフォーマンスを提供できます(特にTCPモードで実行している場合、10ギガビット/秒が実証されています)。
  • 基本的なプレーンHTTPロードバランシングのセットアップで、IMHOをより簡単に起動して実行できます。
  • 変更が少し少なく、特に少し古い安定したブランチは、セキュリティと安定性の更新を必要とせずにしばらくの間しばしば行きます。

しかし、言ったように、どちらも優れた選択肢です。一番快適だと思うものを選んでください。


1
圧縮はnginxにとって大きなプラスであるため、単純にフェイルオーバー(haproxy)とgzip圧縮(nginx)を実行するhaproxy + nginxになりました。
AlexisLê-Quôc12年

2

それは本当にあなたが何をしたいかに依存します。

Nginxは、クラスター間で負荷を分割したり、特定のドメインを異なるクラスターにルーティングしたりできます。nginxのパフォーマンスは満足できるものです。それはロードルーターのようなものです。

haproxyの場合、サーバーの状態を常に照会し、トラフィックをサーバーに転送する前にサーバーをチェックすることを知っています。また、統計を表示できるインターフェースも備えています。nginx私はどちらのスコアでもこれをしないと思います。


1

nginxをウェブサーバーとして使用しており、非常に満足しています。私はApacheに戻ることはありません。欠点は、PHPの実行に専念している場合です。fastCGIで動作させるには、いくつかのハッカリージッガリーが必要です。

キャッシュのためにワニスを配置することを忘れないでください!その簡単なステップで、スラッシュドット/火の玉になるサイトの多くの問題を解決します!


0

私はこれに関する専門家ではありませんが、私の知る限り、HAProxyの方がパフォーマンスが優れており、ロードバランシングの方法をより柔軟に構成できます。

これで比較とベンチマークのリストを投げることができましたが、代わりにGoogleの結果をリンクするだけですhttps://encrypted.google.com/search?q=nginx+vs+haproxy

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.