1.2. haproxy
HAProxy は、インターネットに接続されたサービスや Web ベースのアプリケーションなどの HTTP および TCP ベースのサービスに負荷分散されたサービスを提供します。選択したロードバランサースケジューリングアルゴリズムに応じて、haproxy は 1 つの仮想サーバーとして動作する複数の実サーバーのプール全体で、複数のイベントを数千個の接続で処理できます。スケジューラーは接続の量を判断し、非加重のスケジュールで均等に割り当てするか、加重を認識するアルゴリズムで高容量の処理が可能なサーバーにより多くの接続量を割り当てします。
HAProxy では、ユーザーは複数のプロキシーサービスを定義でき、プロキシーに対してトラフィックの負荷分散サービスを実行します。プロキシーは、1 つのフロントエンドシステムと 1 つ以上のバックエンドシステムで設定されます。フロントエンドシステムは IP アドレス (VIP)、プロキシーがリッスンするポート、および特定のプロキシーに使用するバックエンドシステムを定義します。
バックエンドシステムは実サーバーのプールで、負荷分散アルゴリズムを定義します。
HAProxy はレイヤー 7 (アプリケーション層) で負荷分散管理を実行します。ほとんどの場合で、管理者は HTTP ベースの負荷分散 (ビジネスの継続に高可用性インフラストラクチャーが必要となる本番 Web アプリケーションなど) に HAProxy をデプロイします。