我们的一台运行 PHP 应用程序的生产机器上有一个特殊问题。
我们有一个仅在代码中的一个位置调用的 AJAX 调用。然而,在任何给定时间,当我查看 Linux 中的 PHP 事件文件 (suphp_log) 时,我发现当服务器卡住时(几分钟),这是因为这个特定的 ajax 请求 (file_ajax.php) 是在 5 分钟范围内每秒调用 30-40 次。
我完全不知道这个查询怎么会被调用那么多次。它仅在加载页面时仅在 Javascript 中调用,我真的怀疑有人设计为在客户端每分钟重新加载 30-40 次。
您是否知道此类问题的历史,PHP 服务器从哪里开始“卡顿”?
最佳答案
我真的怀疑问题出在 php 方面,更有可能是您的客户端 javascript 有问题并且在某些情况下会重复请求(即如果请求的回调以某种方式启动新请求,即如果服务器未返回 ok,重新启动请求 => 服务器再次返回错误 => 重新启动请求 => [...],5 分钟后浏览器取消,因为它检测到无限递归或超时)
关于PHP 服务器 "stuttering",卡住服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2161975/