私のサーバー上では、時間計算の計算サービスをユーザーに提供します。私はこれらの計算作業をジョブキューに入れました。だから私は、ユーザーを待つジョブ数を表示する必要があります。私はララベルのキューで特定の仕事の前にいくつの仕事を得る方法を見つけることができません。私はキューとしてBeanstalkdを使用しました。laravelキュー内の特定のジョブの前のジョブの数を取得します。
0
A
答えて
1
「How can I get a list of all jobs in a beanstalk tube?」と同様に、のBeanstalkdは配列ではありません。それは、次の仕事を遂行するためだけに、検索またはカウントされるようには設計されていません。
キューにあるジョブの数とその順序がどこにあるのかを確認するには、別のデータストア(Redisまたはmemcachedなど)の別の場所に書き留めます。ジョブをキューに入れたときにエントリを作成し、ジョブがBeanstalkdから削除されたときにジョブを削除します。注 - この「順序」または「シーケンス」は、すべてのジョブが同じ優先順位を持つ場合にのみ有効で、両方のシステムを完全に同期させておきます。
もっと合理的なやり方としては、キュー(または特定のチューブ/キュー)内のジョブの総数を数えることです。ジョブが、取るべき時間内におおむね似ている場合は、新しい仕事(またはあなたが入れたばかりの仕事)が完了するまでにどれくらいの時間がかかるかの見積もり。
createdAt時間を持つ特別なジョブでETAを計算すると、実行時にキュー(now-createdTime)で取り込まれた時間が外部ストアに更新されます。
関連する問題
- 1. laravel:取得後のジョブID
- 2. RabbitMQキューのジョブの取得/削除は、ジョブIDやジョブ内の詳細によって可能ですか?
- 3. hangfireを制限して特定のキューからジョブを取得する
- 4. Laravel [5.3 | 5.4]ジョブ内のジョブのディスパッチ
- 5. バッチ・バッチ内のキュー・ジョブ・インスタンス
- 6. イベント、リスナー、ジョブ、キュー間のLaravelの違い
- 7. キュー内のLaravelジョブを確認::前に削除する処理をする
- 8. lsb.queues内のキュー内の最大ジョブを定義する
- 9. ジーンズの特定のジョブのキューに複数のビルドがあります
- 10. 複数のキューを持つBeanstalk設定ワーカー:別のジョブを生成するジョブ
- 11. キューはLaravelのキューにある次のXジョブを実行します
- 12. VSTSのキューJenkinsジョブ
- 13. すべてのジョブが完了した後のLaravelキューのポーリング
- 14. Laravel 5.2新しいジョブを追加する前にキューに入れられたジョブを確認します
- 15. LaravelのCronジョブ
- 16. 火ジョブ特定の日時
- 17. 遅延ジョブで作成したジョブのIDを取得する
- 18. 同じブランチのジョブが保留中のジョブのクリーン・ジェンキン・キュー
- 19. cronジョブのURLを取得
- 20. SQLジョブのキューはありますか?
- 21. リスナは、スパーク・ジョブ・サーバからジョブ・ステータスを取得します。
- 22. 別のジョブの中からジョブを作成するLaravel 5.2
- 23. Beanstalkdは、キュー内のすべてのジョブを同時に実行します。
- 24. ジョブLaravelで非オブジェクトのプロパティを取得しようとしています
- 25. 特定の日時のcronジョブ
- 26. 特定のジョブのトラビスCIタイムアウト
- 27. laravelのキューで非同期のジョブを実行できません
- 28. Resqueキュー内のジョブをシャッフルする方法は?
- 29. Laravel Queueジョブの静的変数
- 30. オラクルでジョブの名前を取得する方法