2

Beanstalkdで

telnet localhost 11300
USING foo
put 0 100 120 5
hello
INSERTED 1

予約時にこの仕事の優先順位を知るにはどうすればよいですか?また、新しい優先度を現在の優先度+100に等しくしてリリースできますか?

4

1 に答える 1

1

Beanstalkd はデータで優先度を返しませんが、独自のメッセージ本文にメタデータとして簡単に追加できます。たとえば、Json をメッセージ ラッパーとして使用すると、次のようになります。

{'priority':100,'timestamp':1302642381,'job':'download http://example.com/'}

予約される次のメッセージは、優先度と時間に応じて、選択されたチューブから次に利用可能なエントリになります。これは、最初にメッセージをキューに送信したときに要求した遅延の影響を受けます。

追加: Beanstalk ジョブの優先度 (および以前に予約された回数などの他の多くの情報) を取得できますが、それはstats-jobコマンドへの追加の呼び出しです。jobId を指定して呼び出すと、約 10 種類の異なる情報が返されます。プロトコルドキュメントとライブラリ ドキュメントを参照してください。

于 2011-04-12T21:11:05.380 に答える