ラウンドロビン
セッションは順番に割り当てられます:メンバー1, 2, 3, ..., N, 1, 2, ... 各メンバーはすべてのリクエストの正確に 1/N を受け取ります。サーバー容量やクライアントアフィニティは無視します。シンプルで予測可能ですが、異種ハードウェアでは失敗しやすいです。
ソースIPハッシュ
クライアントIPをメンバー数で割ったハッシュ値がバックエンドを選択します。同じクライアントは常に同じメンバーに到達するため、ステートフルなアプリケーションに有用です。メンバーの追加または削除は、すべてのクライアントマッピングを再編成します(Nから(N-1)/Nのすべてのセッションに変化)。
加重
各メンバーは、プール全体の重数に対する自身の重みに比例するシェアを受け取ります。重み=4のメンバーは、重み=1のメンバーの4倍のセッションを受け取ります。異種バックエンド容量(例:VM 対 ベアメタルサーバー)をモデル化するために使用されます。
一貫性ハッシュ
メンバーとクライアントの両方が、ハッシュを通じて円形リングにマッピングされます。各クライアントは、リング上で時計回りで最も近いメンバーに送られます。仮想ノード(メンバーごとのレプリカ)は、分布の均一性を向上させます。メンバーが故障した場合、そのセッションはリング上の次のメンバーに移動するだけです—剰余ハッシュの場合の100%の障害に対し、1/Nのセッションしか障害しません。