重みは、サーバー上のすべてのポートに適用されます。特定ポートについて、要求は相互に相対的な重みに基づいてサーバー間で分散されます。例えば、一方のサーバーが重み 10 に設定され、他方が 5 に設定されると、10 に設定されたサーバーは 5 に設定されたサーバーの 2 倍の要求を得るはずです。
重みは、executor の内部カウンター、advisor からのフィードバック、および Metric Server のようなシステム・モニター・プログラムからのフィードバックに基づいて、manager 機能によって設定されます。manager の実行中に重みを手作業で設定したい場合は、fixedweight オプションを dscontrol サーバー・コマンドに指定してください。fixedweight オプションの説明については、dscontrol manager を参照してください。
最大の重み境界は、各サーバーが受け取る要求数の間で生じる差の大きさに影響します。 最大の weightbound を 1 に設定すると、すべてのサーバーの重みは 1、0 (静止している場合)、 あるいは -1 (ダウンのマークが付けられている場合) となります。この数を増加すると、サーバーに掛かる重みの差は増加します。最大の weightbound が 2 の 場合、1 つのサーバーが受ける要求の数は他の 2 倍になります。最大の weightbound が 10 の場合、1 つのサーバーが、他の 10 倍の要求を受けることが可能になります。デフォルトでは、最大の weightbound は 20 です。
advisor は、サーバーが停止したことを検出すると manager に通知し、これを受けてサーバーの重みは 0 に設定されます。この結果、executor は、重みが 0 のままである限り、追加の接続をそのサーバーに送信しません。重みが変更になる前に、そのサーバーに活動状態の接続があった場合、 接続はそのまま正常に完了します。
すべてのサーバーがダウンしている場合は、manager は重みを weightbound の半分に設定します。