本文关注的就是如何发现这些问题, 以及发现问题的思路.
我们首先找到系统中一个合适的API或函数, 用来放大问题.
这个 api 设计之初是给 nginx 负载均衡做健康检查的....我们知道 Laravel 的性能是出了名的不好, 但是也不至于到这个程度, 从 api 的编写来看不应该这么低....当一个进程处于 Sleep 状态的时候, 任然占用了不少 CPU, 先不要怀疑是不是进程的问题, 我们看一下 Ttop 命令的 man page...., 我们知道, 当使用系统调用的时候, 系统陷入内核态, 这个过程是会产生软中断的, 通过查看 php-fpm 的系统调用, 验证我们的猜想
?...strace 查看具体的系统调用, 发现大量的系统调用来自于 stat, 猜测可能是opcache 频繁的检查时间戳, 判断文件修改.