【问题标题】:Wordpress extremely slow at VPSWordPress 在 VPS 上非常慢
【发布时间】:2015-04-14 11:59:00
【问题描述】:

最近一位客户在 1&1 购买了 VPS,我将 Worpress 网站从旧的共享主机 (Bluehost) 移到了新的 VPS。该站点非常慢,我不知道如何解决这个问题,这意味着在哪里攻击,如果我应该在 Apache 中优化某些东西,是否应该安装一些插件来避免这种情况或其他什么,所以我需要一些忠告。围绕该 WP 的一些数据:

  • 数据库拥有大约 35k 个帖子
  • 我已禁用 W3C Total Cache 插件,因为我认为未配置好并且会降低网站速度
  • 我没有使用任何像 thimbthumb 这样的图像压缩器(这是首先安装的,但出于安全原因,我从网站上删除了)
  • VPS 有两个内核和 4GB 内存,运行 Centos、PHP 5.3.3、MySQL 5.5.x 和 Apache 2.2.15

谁能给我一些想法?建议?经验?不知道还能做什么或如何解决这个问题,我的知识还没有到此为止。

注意:该站点是this自己测试并注意它有多慢

执行测试:

为了找到我启用的瓶颈:

  • Wordpress 调试日志:

    define('WP_DEBUG', true);
    define('WP_DEBUG_LOG', true);
    define('WP_DEBUG_DISPLAY', false);
    @ini_set('display_errors',0);
    

    这会记录大多数时间的错误,例如[13-Feb-2015 12:01:46] PHP Notice: Undefined property: stdClass::$category_parent in /var/www/vhosts/elclarinweb.com/httpdocs/sistema/wp-content/themes/elclarin_v2/functions.php on line 136

  • MySQL 日志:mysql.logmysqld.logmysqld_slow.log

对于mysql.log,我注意到大量访问,对于mysqld_slow.log,我注意到以下输出:

SET timestamp=1423830131;
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';
# User@Host: elclarin_us[elclarin_us] @ localhost []
# Query_time: 0.001520  Lock_time: 0.000043 Rows_sent: 227  Rows_examined: 261
SET timestamp=1423830131;
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';
# Time: 150213 13:22:14
# User@Host: elclarin_us[elclarin_us] @ localhost []
# Query_time: 0.003051  Lock_time: 0.000097 Rows_sent: 227  Rows_examined: 261
SET timestamp=1423830134;
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';
# User@Host: elclarin_us[elclarin_us] @ localhost []
# Query_time: 0.003259  Lock_time: 0.000097 Rows_sent: 227  Rows_examined: 261
SET timestamp=1423830134;
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';
# Time: 150213 13:22:15
# User@Host: elclarin_us[elclarin_us] @ localhost []
# Query_time: 0.001597  Lock_time: 0.000048 Rows_sent: 227  Rows_examined: 261

为什么总是执行相同的查询?任何网络服务器线程正在杀死我的 Wordpress?

【问题讨论】:

    标签: mysql wordpress performance apache caching


    【解决方案1】:

    看起来你至少需要仔细观察三个方面:

    1. 服务器创建页面需要多长时间
    2. GZip 压缩
    3. 页面显示时加载的内容。

    服务器需要很长时间才能创建您的页面。所有的 SQL 查询都可能是原因。您将需要找出标准页面的数据库活动是什么。如果您能分辨出导致该活动的原因,它将为您提供有关如何攻击它的线索。即使在缓慢的 VPS 上,WordPress 本身通常也不会那么慢。

    其次,您的网站未设置为使用 GZip。只需开启 GZip 即可显着减少下载数据量。

    第三,您在上面给出的链接中的页面发出 168 个不同的 HTTP 请求。显示页面需要这么长时间也就不足为奇了。其中一些请求会阻止浏览器开始显示(呈现)页面。我建议您使用WebPageTest 之类的网站。它将分析您的网站,并为您提供有关正在发生的事情的详细信息。然后,您可以查看下载的每个项目,看看是否有办法加快速度。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-17
      • 2018-08-21
      • 2018-06-14
      • 2013-06-19
      • 2015-06-11
      • 1970-01-01
      相关资源
      最近更新 更多