Laravel 框架中queue:listen 和 queue:work --daemon 的区别

在Laravel框架中当我们使用到监听队列的时候,会遇到下面的问题:

  1. 问题:通常会遇到cpu飙升的情况

  2. 通常使用到的命令:

    php artisan queue:listen
    php artisan queue:work --daemon

  3. 这两个监控命令的区别:

    queue:listen监听队列请求, 只要运行着, 就能一直接受请求, 每次重新加载整个框架,除非手动终止
    queue:work --daemon 同 listen 一样, 只要运行着, 就能一直接受请求, 不一样的地方是在这个运行模式下, 当新的请求到来的时候, 不重新加载整个框架, 而是直接执行内存中的那个原来的文件

    注意: 使用 queue:work --daemon , 当更新代码的时候, 需要停止, 然后重新启动, 这样才能把修改的代码应用上,同swoole机制一样,常驻内存

  4. 通过上面的两个命令相比较发现:

    queue:listen 会占用大量的cpu去加载整个框架
    queue:work --daemon 不会占用cpu去加载框架,常驻内存,每次更新完对应的队列代码需要重新启动

 

作者:Carver-大脸猫

出处:https://www.cnblogs.com/carver/articles/17660185.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

转载请注明原处

posted @   Carver-大脸猫  阅读(522)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示
more_horiz
keyboard_arrow_up light_mode palette
选择主题