26

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

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

现在我的问题是:如何获得队列中所有作业的列表;像peek-all什么?

4

1 回答 1

34

有一些主代码的分支提供了这种信息(在管道中检索准备好的、保留的和隐藏的工作),但它不在主干版本中。这是因为它可能带来的问题——例如在一个巨大的实现中,它必须返回潜在的大量数据并在此期间阻止服务器执行任何其他工作。

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

从另一个方向思考问题可能会很有用 - 例如询问您为什么需要有关队列内容的信息,并可能通过您自己的代码组装您在添加项目时需要的数据。

于 2011-01-23T11:10:18.110 回答