私たちの環境では、異なるクラスター上にNginxとHAProxyの両方を使用しています。どちらか一方を使用する利点はありますか?
または、基本的なLAMPサーバークラスターの負荷分散を行うための最良の方法は何ですか?
(これは明らかに状況に固有であるため、「負荷分散の最良の方法」については説明しません。)
HAProxyとnginxはどちらも、Unix上のオープンソースHTTPロードバランサーに最適です。非常に高いレベルで、最初に頭に浮かぶ長所と短所は私見です。
nginx:
HAProxy:
しかし、前述のように、どちらも優れた選択肢です。あなたが最も快適に感じるものを選んでください。
それは本当にあなたが何をしたいかに依存します。
Nginxは、クラスター間で負荷を分割したり、特定のドメインを異なるクラスターにルーティングしたりできます。私たちのnginxのパフォーマンスは満足のいくものでした。ロードルーターのようなものです。
Haproxyの場合、サーバーのステータスを常に照会し、トラフィックをサーバーに転送する前にサーバーをチェックします。また、統計を表示できるインターフェイスもあります。 nginxどちらのスコアでもこれを行うとは思いません。
私たちはnginxをウェブサーバーとして使用しており、非常に満足しています。私はApacheに戻ることは決してありません。欠点は、PHPを実行することに熱心な場合です。 fastCGIで動作させるには、ハッカリージガリーが必要です。
キャッシングのためにワニスを配置することを忘れないでください!この簡単な手順で、サイトがスラッシュドット/ファイアボールされるという多くの問題が解決されます。
私はこれに関する専門家ではありませんが、私が知る限り、HAProxyの方がパフォーマンスが高く、負荷分散の方法をより構成可能です。
今、私はあなたに比較とベンチマークのリストを投げることができますが、代わりにグーグルの結果をリンクします https://encrypted.google.com/search?q=nginx+vs+haproxy