2016-08-03 7 views
0

一度に1つのタスクしか処理できないシリアルキューが必要です。これはqueue.xmlの宣言です。シリアル処理のサイズ1のタスクキュー

<queue> 
    <name>pumpkin</name> 
    <rate>20/s</rate> 
    <bucket-size>1</bucket-size> 
    <max-concurrent-requests>1</max-concurrent-requests> 
</queue> 

"rate"パラメータはこの設定で影響しますか?

タスクをキューに入れ、一度に1つずつしか処理しません。

ありがとうございます。

答えて

0

キュー速度とバケットサイズは、同時に処理するタスクの数を制限しません。 、あなたのmax-concurrent-requestsは1つのタスクだけが一度に実行されていることを確認する必要がありますしかしhttps://stackoverflow.com/a/3740846/4495081

に従って:より良い(current) official docsよりもこれらのconfigsの(今なくなって)公式の説明を(あなたがそれに応じてコンフィグを再検討することをお勧めします)キャプチャこの回答を参照してください。 the docsへ:

あなたは 低い値にmax_concurrent_requestsを設定することにより、この可能性を回避することができます。たとえば、max_concurrent_requestsを10に設定した場合、 の待ち行列は、待ち時間が0.3 秒の場合、約20タスク/秒を維持します。ただし、待ち時間が0.5秒以上になると、この の設定によって処理速度が低下し、同時に実行されるタスクが10個以下になるようになります。

関連する問題