是否有可能在某个时间完成 Beanstalkd 任务?

Is it possible to plain Beanstalkd task at some time?

我使用Beantalkd 和Yii2 框架。 要添加到队列中,我使用这样的东西:

        Yii::$app->beanstalk
          ->putInTube('tube2', ['param' => 'val'], PheanstalkInterface::DEFAULT_PRIORITY, PheanstalkInterface::DEFAULT_DELAY);

但现在我需要在指定的时间完成一些任务,Beantalkd 是否可行,或者我需要类似 Resque 的东西?

您可以通过计算延迟并将其作为参数发送到上面的示例来在指定的时间执行某些任务。

另一方面,最好在 Redis 中存储基于时间的列表,并有一个 cron 每分钟读取过期的列表并将作业加载到 beanstalkd。