webman 队列进程导致php内存占用很大

Le

宝塔监控里查看php占用内存特别大

查看信息发现是队列的进程占用的,但是使用php start.php status 查看的时候,队列只有30M不到的占用

截图

截图

截图

然后系统会自动重启php进程,比如到1.6G,linux系统占用过大了,队列会自动重启,这种应该如何排查。。

大概6天的时间,php占用内存从200MB 升到了1G多

117 1 0
1个回答

walkor 打赏
  • Le 9小时前

    我这个队列下只有一个消费文件,我也检查了下这个里面的代码,没有发现明显的可无限增长的静态变量。。关键这个内存增加的比较慢,得好几天,才能看到变大很多

  • Le 8小时前

    老大,用php start.php status 查看的队列内存使用数量,能判断是否里面有没有无限增长的静态变量吗?

  • walkor 6小时前

    php start.php status 看业务代码内存占用不到20M,没有问题。
    看看是不是业务从数据库等存储读取了太大的数据,还有是否使用了什么扩展导致。

  • Le 6小时前

    workerman.log里有些redis报错,有可能是这个原因导致的吗?
    pid:1769478 RedisException: socket error on read socket in /vendor/webman/redis-queue/src/RedisConnection.php:64

    pid:1769476 RedisException: socket error on read socket in /vendor/webman/redis-queue/src/RedisConnection.php:64

  • walkor 6小时前

    没遇到过这种问题,要自己排查

×
🔝