我的PHP后端有问题我无法理解。在请求API时,我经历了间歇性的“挂起”某些apache进程(PHP代码返回json)。
Apache永远无法提供文件(html,css,js等),只是有限数量的API调用会触发问题。该请求在Chrome开发工具“网络”标签中处于待处理状态,即使我运行apachectl restart
,请求在重新启动后仍处于待处理状态。我可以看到,当我运行httpd
时,所有apachectl stop
进程都不会停止。我必须用killall -9 httpd
杀死他们。
当问题发生时,我必须停止Apache,杀死所有httpd进程,然后再次启动apache。如果我没有重新启动大多数API调用挂起(可能是分配给挂起子进程的那些)。
触发问题的API调用包括对MySQL的调用。
检查mysql服务器上的进程列表,建立连接但处于SLEEP状态。
问题听起来像是代码问题还是配置问题?
错误日志(mysql和apache)没有显示任何内容,所以我想我应该尝试strace
(mac上的dtruss
?)apache进程。 我该怎么做?
-
环境: