如何获取beanstalk管中所有作业的列表?

时间:2011-01-23 07:36:57

标签: beanstalkd

我在我的服务器上安装了beanstalk,并运行以下命令:

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

现在我的问题是:如何获得队列中所有作业的列表;类似于peek-all

1 个答案:

答案 0 :(得分:31)

主代码的一些分支提供了这种信息(retrieving ready, reserved, and buried jobs in a tube),但它不在主干版本中。这是因为它可能带来的问题 - 例如在巨大的实现上,它必须返回潜在的大量数据并阻止服务器在此期间进行任何其他工作。

最终,BeanstalkD是一个队列 - 不是一个数组,并不是为了允许访问其中的每个项目 - 它返回下一个要处理的项目。

从另一个方向思考问题可能很有用 - 例如询问为什么需要有关队列内容的信息,以及可能在您自己的代码中汇编您添加项目时所需的数据。