今天要下线 memcache 服务,由于是祖传代码,虽然按照代码里面的开关配置了关闭,实际通过 netstat 观察还在请求
while :; do sleep 1;sudo netstat -p|grep "11211" ; done ;
代码看了半天看不明白,可以考虑看下系统调用,看能不能找到一些线索
sudo strace -o strace.log -s 1024 $(pidof "php-fpm" -o 26136 | sed 's/\([0-9]*\)/-p \1/g')
26136
是主进程,主进程不处理业务逻辑,还得看子进程的- o
输出到指定文件- s
当系统调用的某个参数是字符串时,最多输出指定长度的内容,默认是32个字节
然后再开个终端
sudo tail -f strace.log|grep 11211 -m 1 -B 4000|grep open
- B 4000
是随便输入的,根据自己业务的复杂度,多试几次- m 1
是找到一次匹配就停止
👇 下面是我的公众号,高质量的博文我会第一时间同步到公众号,给个关注吧!