记录一次使用thinkphp异步处理消息流程

1、启动redis   window下下载redis服务,请自行百度。

cd redis 目录下

启动服务:

redis-server.exe redis.windows.conf


如上图就是启动成功了

2、下载可视化工具:

如下图就连接成功


3、就可以愉快的敲代码了

首先创建一个controller和action    因为我用的是thinkphp5框架

目录可以自定义   加入队列创建好了


然后创建消费类   消费类目录也可以自定义


如上图这样就自定义完了

我是在抽奖的时候加入队列




这块是执行消费命令  

下面命令是只执行一次任务   用于做调试

php think queue:work --queue helloJobQueue


队列执行:

window下执行queue:listen 会报错  这是正常  放到linux下正常

php think queue:listen --queue helloJobQueue --delay 0 --sleep 3

php think queue:listen \

--queue  helloJobQueue \  //监听的队列的名称

--delay  0 \        //如果本次任务执行抛出异常且任务未被删除时,设置其下次执行前延迟多少秒,默认为0

--memory 128 \      //该进程允许使用的内存上限,以M 为单位

--sleep  3 \        //如果队列中无任务,则多长时间后重新检查

--tries  0 \        //如果任务已经超过重发次数上限,则进入失败处理逻辑,默认为0

--timeout 60        // work 进程允许执行的最长时间,以秒为单位


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容