私もこのタイトルを初めて見たときは驚きました。Apache でロード バランシングができるのですか?とても強力です。調べてみると、確かにそれは可能で、機能的にも悪くないことが分かりました。これはすべて mod_proxy モジュールのおかげです。まさに強力な Apache です。
早速、負荷分散の設定方法を説明しましょう。
一般に、負荷分散とは、負荷分散の目的を達成するために、クライアントのリクエストをバックエンド上のさまざまな実サーバーに分散することです。もう 1 つの方法は、2 つのサーバーを使用し、1 台をメイン サーバー (マスター) として使用し、もう 1 台をホット バックアップ (ホット スタンバイ) として使用することです。メイン サーバーがダウンすると、すぐにメイン サーバーに切り替えられます。バックアップサーバーを使用して、システム全体の信頼性を向上させます。
負荷分散設定
Apache は上記 2 つのニーズに対応できます。まず、負荷分散を行う方法について説明します。まず、Apache のいくつかのモジュールを有効にする必要があります:
プログラムコード
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
プログラムコード
ProxyRequests Off
<プロキシ バランサー://mycluster>
BalancerMember http://node-a.myserver.com:8080
BalancerMember http:/ /node-b.myserver.com:8080
ProxyPass / Balancer://mycluster
# 警告: 次の構成はデバッグ専用であり、決して追加しないでください。本番環境でも! ! !
SetHandler Balancer-manager
order Deny,Allow
すべてから拒否
localhost から許可
プログラムコード
プロキシリクエストオフ
<プロキシバランサー://mycluster>
BalancerMember
http://node-a.myserver.com:8080loadfactor=7 BalancerMember
http://node-b.myserver.com:8080loadfactor=2BalancerMember
http://node-c.myserver.com:8080loadfactor=1< /Proxy>
ProxyPass / Balancer://mycluster
プログラムコード
プロキシリクエストオフ
<プロキシバランサー://mycluster>
BalancerMember
http://node-a.myserver.com:8080loadfactor=7 BalancerMember
http://node-b.myserver.com:8080loadfactor=2BalancerMember
http://node-c.myserver.com:8080loadfactor=1< /Proxy>
ProxyPass / Balancer://mycluster
ProxySet lbmethod=bytraffic
ProxyRequests Off
<プロキシ バランサー://mycluster> BalancerMember
http://node-a.myserver.com:8080
BalancerMember http:/ /node-b.myserver.com:8080
status=+H