【发布时间】:2012-06-30 10:37:22
【问题描述】:
我有一个网站,其中包含在 VPS 托管服务上运行的自定义脚本。 所有脚本都通过 index.php 使用 mod_rewrite 和 .htaccess 来获取友好的 URL
我的脚本中的某些内容正在产生高 CPU 使用率,如下所示:
当我去strace 一个给定的进程时,我得到了这个我不明白的:
setitimer(ITIMER_PROF, {it_interval={0, 0}, it_value={90, 0}}, NULL) = 0
rt_sigaction(SIGPROF, {0x7a6b8f, [PROF], SA_RESTORER|SA_RESTART, 0x2af8ae8742f0}, {0x7a6b8f, [PROF], SA_RESTORER|SA_RESTART, 0x2af8ae8742f0}, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [PROF], NULL, 8) = 0
这在无限循环中不断重复。
我需要知道的是如何追踪导致此问题的确切 PHP 脚本。有什么建议吗?
【问题讨论】:
-
启用错误记录。设置最大执行时间。查看脚本行为异常的错误日志。可能会创建您自己的错误处理程序,以便在触发超时错误时转储请求详细信息,因此您可以开始使用远程调试器重现此问题。
-
您使用的是哪个 API? CGI?