美文网首页
Laravel+Beanstalk

Laravel+Beanstalk

作者: hadi01 | 来源:发表于2019-05-28 15:52 被阅读0次

本文基于Laravel5.5

一、安装Beanstalk

    1、安装Beanstalk比较简单

        #git clone https://github.com/kr/beanstalkd

        #cd beanstalkd 

        #make && make install

        检测是否安装成功:#beanstalkd -v

    2、eanstalk-console界面化工具-php(版):https://github.com/ptrofimov/beanstalk_console

二、Laravel5.5

1、添加包

    $composer require pda/pheanstalk ~3.*(为什么安装V3,应该安装V4会报错)

2、编辑.env文件中的QUEUE_DRIVER=beanstalkd(这个和config/queue.php文件connections配置一致)

3、生成任务类

    $php artisan make:job ProcessSMS 

    //在任务类的handle方法中实现具体的业务逻辑代码

    //在__construct(接收dispatch传过来的参数)

4、分发任务

    一旦创建好任务类,就可以用它自身带的dispatch()方法分发它了,传递给dispatch方法的参数,将会被传递给任务的构造函数。

    4.1、延迟分发,延迟10秒执行,ProcessSMS::dispatch($params)->delay(now()->addSecond(10))

    4.2、分发任务到指定队列(注意:如果不是默认队列default,queue:work 中要指定监听队列)--queue=myQueue,default

        ProcessSMS::dispatch($params)->onQueue('myQueue'); //默认是default

5、运行队列处理器

    $php artisan queue:work 连接(可省略) --queue=myQueue,default

相关文章

  • Laravel+Beanstalk

    本文基于Laravel5.5 一、安装Beanstalk 1、安装Beanstalk比较简单 #git...

网友评论

      本文标题:Laravel+Beanstalk

      本文链接:https://www.haomeiwen.com/subject/doddtctx.html