当前位置: 首页 > article >正文

宝塔 进程守护管理器 神坑,再次跌入。thinkphp-queue队列 勤勤学长

如果,你有在使用【进程守护管理器】,记得在更新/重启,甚至卸载重新安装后,重启服务器

事情的起因是,昨日服务器突然异常,网站无法正常访问,进入宝塔面板,发现 cpu和负载率均超过100%

我的项目是thinkphp6,用的think-queue

php7.4+rds+redis,数据库都是上云。

因为这个服务器是有运行一些队列,我把所有进程都关了,还是没有变化。

在搜索解决方法的过程中,宝塔论坛有人提到过,是某些监控插件引起的。

我就把旧版本的网站监控卸载了,把新版本的更新。不行,就把能更新的都更新了(包括【进程守护管理器】),能卸载的卸载了。

还没能解决。我用自带的【宝塔任务管理器】看进程列表。把进程数量php应用最高的结束掉。还是不行,重启php、宝塔面板,更新面板,清理磁盘空间。都不行。最后是结束掉Nginx,重新启动恢复。

这个服务器A,只是我其中一个,还有另外的服务器B处理相同名称和不同的名称的队列任务。

今天,2024年10月11日中午开始。

陆续有用户反馈,不同的涉及到队列的功能,部分任务没有执行到,无执行记录。

因为已经涉及到了核心功能影响到用户的正常使用了,只能放下其他工作,开始排查。


我生产了100个输出0~99的任务,用旧名称。执行完,无队列消费记录,无报错。

我生产了100个输出0~99的任务,用旧名称,延时10秒后执行。执行当时有100个定时任务,时间到后,无队列消费记录,无报错。

分别在重启队列、重启软件后再次尝试以上,无果,关闭进程。

我生产了100个输出0~99的任务,用一个新名称,使用ssh连接服务器,执行。100条记录跑完。

php think queue:work --queue test3 --tries 1

我以为是【进程守护管理器】软件的问题,在ssh上运行旧名称的队列命令。等了好一会都没有见消费任务进来。

在等待的过程中,我把【进程守护管理器】备份配置信息,直接给卸载掉,重新安装。

在我没有再往【进程守护管理器】添加进程的前提下,mysql一直在生成的任务列表。但是redis的定时任务还没到的时候,是有记录的,一到时间,就没有了。我的ssh面板上也没记录。我把ssh断开后,把【进程守护管理器】卸载掉,还是一样的情况。

是的!队列任务还是莫名其妙被消费掉。


已经有不同的用户反馈不同的问题了,还是比较核心的功能。

最后,无奈重启生产服务器,不等晚上了。

恢复正常 2024年10月11日 17点34分。


http://www.kler.cn/news/343143.html

相关文章:

  • 跨集群复制:在Amazon OpenSearch服务中实现数据同步
  • 牛上脑和各类牛排的叫法,不要土老帽了~
  • NRF24L01无线通信模块学习 来自正点原子标准库
  • Unity3D 动画回调函数详解
  • Spring14——案例:利用AOP环绕通知计算业务层接口执行效率
  • API项目3:API签名认证
  • React高阶组件详解
  • 51c大模型~合集68
  • 如何设置 GitLab 密码长度?
  • lua多条件组合排序
  • Pygame开发贪吃蛇
  • QT学习笔记1.2(QT的应用)
  • 【数学分析笔记】第5章第1节 微分中值定理(1)
  • Unity 从零开始的框架搭建1-1 unity中对象调用的三种方式的优缺点分析【干货】
  • C++ | Leetcode C++题解之第461题汉明距离
  • 大数据毕业设计选题推荐-B站短视频数据分析系统-Python数据可视化-Hive-Hadoop-Spark
  • Word 插入表格的具体步骤图解
  • 服务器部署‌Traefik 实现子级域名路由服务(对外子域名80,路由对内大端口)
  • 【网络】详解TCP协议的“三次握手”/“四次挥手“
  • 自由学习记录(3)