webman 的 monitor 进程内存监控平滑重启好像并不平滑?

hello-liuye

问题描述

查阅代码发现内存达到重启条件后执行了posix_kill($pid, SIGINT);,看起来并不是平滑的重启,随后我对这个猜想进行了验证

复现环境

1、将重启内存阈值调低到30M(memory_limit)
2、将内存检测周期由原来的60s改为10s
3、程序内有意加载更多的文件,并存储于静态数组中

以上3点都是在原规则下,尽快和频繁的触发内存超限重启

重现问题的步骤

1、直接在触发重启的位置来个输出

截图

2、监控进程的内存使用情况来核对触发情况

截图

3、压测日志,在频繁的重启中出现了错误的请求,概率是万分之一,但是看人品,运气差第一轮就会挂一个请求
截图

4、重启日志
截图

5、被压测的文件和方法
截图

287 0 0
0个回答

×
🔝