0
エンキュー後に実行をスケジュールされたプッシュキュータスクを取得するにはどうすればよいですか?タスクキューの実行遅延を回避する方法
プルキューを使用したcronジョブに頼る必要がありますか?
プッシュキューで待機中のタスクの実行では、非常に長い遅延(20分)が定期的に発生します。キューには実行中のものと実行されていないものの6,000以上のタスクが表示されます。 その後、タスクは最終的に実行がスケジュールされ、キューが高速で排水されるので大きなバーストスパイクが発生します。
例として、キュー定義は次のようになります。
<queue>
<name>example</name>
<target>1</target>
<rate>20/s</rate>
<bucket-size>40</bucket-size>
<max-concurrent-requests>10</max-concurrent-requests>
<retry-parameters>
<min-backoff-seconds>10</min-backoff-seconds>
<max-backoff-seconds>60</max-backoff-seconds>
<max-doublings>2</max-doublings>
</retry-parameters>
</queue>
現在、プッシュキューで2時間の遅延が確認されています。 @エリック - なぜプルキューに遅延がありますか?私は専用のバックエンドが、GAEのタスクスケジューリングに依存することなく、どんなチャンクでも望みどおりに動作できると考えました。 –
@Caster - プルキューを使用しても、システムは追加、リース、および削除されたタスクを追跡する必要があります。マスタ/スレーブデータストア内の読み取り専用期間と同様に、リースが発行されない場合もあります。 –