我已经花了很多时间试着将这个问题排除在外,我甚至使用了deregister_heartbeat代码 - 没有任何效果。我想分享一个解决方案,以便在您尝试了解发生了什么时防止Apache/MySQL死亡。
到底不同的服务器上创建一个网站的测试副本交换到一个默认的主题,我能够制定出一个子主题的一个推广引擎,让AJAX调用,以某种方式获得过去后注销心跳 - 我们现在已经放弃了引擎,并可能从头开始编写儿童主题。
为了给我一些时间,同时跟踪有问题的东西,我需要一种方式从网络服务器删除线程,然后它们占用所有可用空间 - 并且我们有一个大型网络服务器 - 它只会导致网站崩溃自Apache重新启动以来的小时。你当然可以在Debian机器上使用硬重启Apache(apachectl restart或服务apache重启) - 但是这会导致所有连接中断 - 并且在多主机环境中它会把某人搞砸。如果你是一个* NIX系统上,你可以做到以下几点,它需要w3m的(或者可以从像elinks,猞猁或链接的CLI运行转储相当于braile模式浏览器)
#!/bin/bash
kill `w3m -dump http://<server address>/server-status | grep "admin-ajax.php"|awk '{print $2}'`
确保在杀死之后并在脚本结尾处获取反引号。我们基本上使用w3m来打开服务器状态页面(您需要在Apache配置中启用该功能 - 只能从本地IP地址使用该功能),我们通过grep管理结果与管理-ajax.php处理流程 - 然后我们养活这些行到AWK基本上返回相关PID号到列表杀命令。
其结果是,在Apache的进程线程会死 - 但会出现短暂而在任何服务器状态列表作为开口槽,无当前进程 - 在随后访问您的网站将占据一个这些线程正常时尚
我们把整个东西放到cron任务每5分钟左右运行一次 - 效果是我们得到的线程出现,但他们从来没有呆足够长的时间来引起问题。
更新:我按照Robert的建议完成了这项工作,woocommerce只在需要的页面上加载脚本。 – user2189801
更新2:对Webpagetest.org进行了测试,结果表明pie.htc请求存在一些问题。任何人有任何线索? [链接](http://www.webpagetest.org/result/140328_9K_PS8/1/details/) – user2189801