の均一な負荷分散を持つプロデューサコンシューマモデルプロデューサのコンシューマシナリオは、1人のプロデューサ(P)とN(3人) (例えば、C1、C2、C3)。現在では、消費者間で負荷を共有する必要があり、その結果、C1 : C2 : C3 = 1 : 3 : 6
となります。これは、Pが10% to C1, 30% to C2 and 60% to C3
を供給しなければならないことを意味し、この分布は一様でなければならない。N1:N2:....:NM
Pは10のアイテムを生成すると言う。カウンター法は、ラウンドロビンと一緒に適用された場合、その後のシナリオは
items 1,2,3 goes to C1, C2, C3, // C1 is done here with its 10%
items 4,5,6 goes to C2, C3, C2, // C2 is done here with its 30%
items 7,8,9 goes to C3, C3, C3, // C3 is bearing continuous load
item 10 goes to C3
以下のようになります。しかし、ここでは分布が均一ではなかった、C3は、目的を失敗の連続負荷を支持しています。
理想の分布は、私がここに仮想的な例を提供しようとしている
items 1,2,3 goes to C3, C2, C3,
items 4,5,6 goes to C3, C2, C3,
items 7,8,9 goes to C3, C1, C3,
item 10 goes to C2
のようなものを持っているでしょう。実際のシナリオでは、上記の例では10とは異なり、カウントはあらかじめ定義されていません。実際のシナリオでは、プロデューサーは生産を続け、決して終わりのないプロセスです。例えば、ゲートを通過する車両の数が1 : 3 : 6
の比率でなければならない3つの料金所C1、C2、C3を有する料金所を想定し、その分布は一様でなければならない。これを実装するための効率的なアルゴリズムを提案してください。
良いと簡単に実装する。 –