在我尝试激活所有插件后,HTTP请求开始挂起,只有当我通过数据库手动禁用插件时才停止

时间:2014-11-05 作者:Matt Refghi

基本上,我有一个新的专用服务器,我正在测试迁移到该服务器的过程。该站点(基于WordPress)似乎运行良好,但我注意到,有时,我可以将服务器置于一种状态,使其一次挂起很多很多分钟。在这种状态下,我可以通过Apache状态告诉您,我的请求处于等待状态。任何额外的请求在同一时间得到相同的处理,并挂起。(其他人似乎能够在这种情况发生时访问该网站,我相信触发挂起的人是唯一感觉到挂起的人。)当它最终从这种状态中恢复过来时,我看到了两种结果:

它加载了,通过查看我们在页脚中登录的内容,我可以看出它花了很多时间处理PHP

我注意到,当发生挂起时,如果我运行以下命令:

更新wp\\u options SET option\\u value=“”其中option\\u name=\'active\\u plugins\';

然后刷新浏览器中的挂起选项卡,it immediately recovers and loads instantly. 对我来说,这表明问题出在WordPress内部,这不是我的主持人能弄明白的。

为了确定导致问题的一个特定插件,我尝试一次激活一部分插件。当我注意到挂起时,我进行了DB修复,然后只激活了该子集的一个子集。但是,奇怪的是,我无法找到一个总是触发挂起的插件。这是不一致的,所以我无法确定具体的罪魁祸首。

为了安全起见,我也试过:

提高php。ini设置(max\\u execution\\u time、max\\u input\\u time、memory\\u limit、post\\u max\\u size)

  • 增加Apache配置设置(保持活动状态)
    • 运气不好。顺便说一下,WordPress版本是4.0,插件总是最新的。

      Any ideas what might be causing this? 下面是我下一步的想法:

      试图找到罪魁祸首,但这次却适得其反。毫无疑问,证明一组特定的插件在激活时不会触发这种挂起。那么,其他插件中的一个必然要受到指责。基本上,这里的关键是增加每个子集的测试-如果它没有持续发生,可能一个插件会带来它发生的机会。简单地说,我需要更多的测试来确定

    更新:挂起刚刚发生在停用时。

    1 个回复
    最合适的回答,由SO网友:Omnikrys 整理而成

    您是在检查mysql中的慢速查询日志还是连接计数?我会毫不犹豫地说mysql可能被什么东西噎住了。此外,top还可以显示发生这种情况时哪些进程正在变得疯狂。

    以下是有关慢速查询日志的一些信息以及访问其信息的不同方式:https://rtcamp.com/tutorials/mysql/slow-query-log/

    结束

    相关推荐

    无法在多站点上查看网络plugins.php或upgrade-core.php

    我有一个有5或6个站点的网络。在网络管理面板中,我可以看到除/wp admin/network/plugins之外的所有页面。php页面和/wp admin/network/upgrade核心。php页面。查看文件夹结构时,这两个文件都存在,但由于某些原因,它们不会加载。非常感谢您的帮助。