lumen中使用beanstalkd消息队列
基于lumen5.7 和laravel一样
-
首先安装beanstalkd 我用的mac 直接brew 安装
brew install beanstalkd
安装好 直接启动
-
在安装beanstalk-console界面化工具:
composer create-project ptrofimov/beanstalk_console -s dev beanstalk
进入beanstalkd目录 直接启动
php -S localhost:5000 -t public
-
然后进入自己的lumen项目中安装beanstalk扩展
composer require pda/pheanstalk ~3.0
配置config目录下的queue文件
在.env添加QUEUE_CONNECTION=beanstalkd PHEANSTALK_HOST=127.0.0.1
-
配置完毕 新建任务类 laravel可用php artisan make:job TestProcess lumen中一些命令被阉割 直接新建文件
添加任务
执行命令消费队列php artisan queue:work --queue=test_process
可查看到任务 到数据库中 查看数据
-
这个只是本地环境用的消息队列 线上环境 可使用守护进程 来对消息队列进行守护 以及消费队列