PHP进程不会死亡

时间:2015-03-24 18:47:33

标签: php mysql apache

我有一个运行在godaddy托管上的网站(是的,我知道......),它可以容纳多达100个并发的php进程。最近,该网站已开始收到503错误,并且流程最大化。

我知道之前已经讨论过与Wordpress相关的内容,但这就是踢球者......我没有运行WP,也没有使用mysql_pconnect。这些过程只是停留并叠加,直到我手动杀死它们。

我连接到数据库并运行3-4个select语句,这就是全部。 Godaddy的支持是无用的,我没有记录脚本调用该进程的日志。

如果没有深入分析代码或能够查看某些日志,我可以采取哪些步骤来缩小导致问题的原因?它在一天中随机出现,也不符合高用量。我可以有130个用户没有问题,但有30个用户得到503错误。

感谢任何帮助,因为我拔出了头发......

更新 最后可以访问查看进程和统计信息。这些过程肯定超过了服务器的时间限制。谈到服务器支持,他们说有几个盒子的问题,他们已将我的服务器添加到该问题列表中。交叉的手指,但怀疑将是解决方案。

我在一个运行10分钟的进程上运行了一个strace -p ...跟踪显示它基本上从一个页面到另一个页面...暂停然后访问另一个页面。我把这个过程绑定到谷歌机器人。这是正常的吗?活跃的53个过程中有52个正在睡觉..这些睡眠者从任何地方到20秒到10分钟。在一些上运行跟踪显示一个LOCK(我假设这意味着它暂停接收。你会注意到运行'顶部'的php进程正在坚持...这个跟踪只是加载一个页面,睡在计时器上,加载另一个页面...这是我的网站已经死了所以你可以想象什么时候忙着这些进程运行这么久。我没有脚本或任何在网站上做这样的事情。我有一个很长的跟踪报告,我可以发送消息或发送电子邮件,但在此处发布时间过长。

top - 17:31:58 up 6 days,  9:17,  0 users,  load average: 6.16, 7.77, 7.15
Tasks:   8 total,   1 running,   7 sleeping,   0 stopped,   0 zombie
Cpu(s): 16.1%us,  7.1%sy,  0.0%ni, 70.6%id,  6.1%wa,  0.0%hi,  0.2%si,  0.0%st
Mem:  32741960k total, 27249096k used,  5492864k free,  1930272k buffers
Swap:  8388604k total,        0k used,  8388604k free, 12611492k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND           
 2617 user  20   0  346m  30m  11m S  0.7  0.1   0:06.95 php                
19181 user  20   0  4404  784  676 S  0.7  0.0   0:01.80 strace             
11404 user  20   0  105m 1936  948 S  0.0  0.0   0:00.03 sshd               
11410 user  20   0 11476 1680 1348 S  0.0  0.0   0:00.01 bash               
15425 user  20   0 14908 1148  960 R  0.0  0.0   0:00.49 top                
17913 user  20   0  105m 1944  948 S  0.0  0.0   0:00.32 sshd               
17945 user  20   0 11476 1672 1348 S  0.0  0.0   0:00.00 bash               
24294 user  20   0  332m  16m  10m S  0.0  0.1   0:01.14 php   

0 个答案:

没有答案