0

複数のワーカーがこのキューを監視している単一のジョブ キューがあります。(各ジョブは 1 人のユーザーに対応します)。任意の時点で、ユーザーごとに複数のジョブがキューにある可能性があります。

ワーカーが一度にユーザーごとに複数のジョブを処理することは望ましくありません。ユーザーのジョブは、その時点でこのユーザーを処理しているワーカーが他にいない場合にのみ、ワーカーによって選択される必要があります。ユーザーのジョブがワーカーによって処理されている場合、次のユーザーのジョブが終了したらすぐに選択されるようにしたいと思います。

ワーカーをユーザーにとらわれないようにしたい (つまり、どのワーカーもどのユーザーのジョブも処理できる必要がある)。これは、水平方向にスケーリングするのに役立ちます。

どうすればいいですか?ユーザーごとに個別のキューを作成することについて考えましたが、ワーカーは膨大な数のキューを監視する必要があり、リソースを浪費する可能性があります。現在、Beanstalkd をキュー サーバーとして使用しています。

どんな助けでも大歓迎です。

4

1 に答える 1