web-dev-qa-db-ja.com

Beanstalkチューブ内のすべてのジョブのリストを取得するにはどうすればよいですか?

サーバーにbeanstalkをインストールし、以下を実行します。

$ telnet localhost 11300
use my_tube
USING my_tube
peek-ready
FOUND 11065 41
{"ts":1295537419,"data":{"nid":"212156"}}

ここで私の質問は次のとおりです。キュー内のすべてのジョブのリストを取得するにはどうすればよいですか。何かのようなもの peek-all

24
Alaa

この種の情報を提供するメインコードのフォークがいくつかあります( チューブ内の準備完了、予約済み、および埋め込みジョブの取得 )が、メイントランクバージョンにはありません。これは、それがもたらす可能性のある問題のためです-巨大な実装では、潜在的に膨大な量のデータを返し、その間にサーバーが他の作業を行うのをブロックする必要があります。

最終的に、BeanstalkDはキューであり、配列ではなく、その中のすべてのアイテムへのアクセスを許可するようには設計されていません。次に作業するアイテムを返します。

キューの内容に関する情報が必要な理由を尋ねたり、アイテムが追加されるときに必要なデータを独自のコードで組み立てたりするなど、別の方向から問題を考えると役立つ場合があります。

32
Alister Bulman