dongyijing2353
2015-01-10 10:40
浏览 142
已采纳

Laravel Queue正在重复使用beanstalkd和redis

I'm using laravel Queues with beanstalkd driver ( same thing happened with redis ), when i push a Queue it just keeps repeating

What i did simply is:

  1. Install beanstalkd , run beanstalkd
  2. Run php artisan queue:listen
  3. In the terminal window of queue listen , it just keeps repeating after every few seconds: Processed: SendEmail

I thought the queue wasn't empty, so tried flushing it out ( it was empty ), failed jobs table is empty.

Second test , stopped beanstlkd and queue listen , i have a controller that simply says:

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

There's no loops in the controller at all, nor in the send email function

图片转代码服务由CSDN问答提供 功能建议

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

我所做的只是:

  1. 安装beanstalkd,运行 beanstalkd
  2. 运行 php artisan queue:listen
  3. 在队列侦听的终端窗口中,它每隔几秒就会不断重复:已处理: SendEmail

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

    第二次测试,停止beanstlkd和队列侦听,我有一个控制器只是说:

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

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

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • doukuangxun5382 2015-01-10 12:08
    已采纳

    you need to delete job at end of SendEmail@fire

    Class SendMail {
        public function fire($job, $data){
            ///...
            $job->delete();
        }
    }
    
    打赏 评论

相关推荐 更多相似问题