1

我正在使用带有 beanstalkd 驱动程序的 laravel 队列(redis 也发生了同样的事情),当我推送队列时它只是不断重复

我所做的只是:

  1. 安装 beanstalkd ,运行beanstalkd
  2. php artisan queue:listen
  3. 在 queue listen 的终端窗口中,它每隔几秒就会重复:Processed: SendEmail

我认为队列不是空的,所以尝试将其刷新(它是空的),失败的作业表是空的。

第二次测试,停止 beanstlkd 和 queue listen,我有一个控制器,它简单地说:

..
Queue::push('SendEmail@fire', array('message' => $msg->id));

控制器中根本没有循环,发送电子邮件功能中也没有

4

1 回答 1

6

您需要在 SendEmail@fire 末尾删除作业

Class SendMail {
    public function fire($job, $data){
        ///...
        $job->delete();
    }
}
于 2015-01-10T12:08:25.510 回答