我在 Google Compute Engine 上运行了一个 Wordpress 主题,使用了 Cloud SQL 和 Apache2(W3 Total Cache 目前已关闭)。实际上没有比我更多的访问者,因为它还在开发中。
问题几乎从无到有。我正在开发网站,页面加载量开始增加。但那不可能是故障,因为我撤消了所有操作。Apache 的 10 个进程的 CPU 使用率从 1-5% 上升到 80%。
在过去的几天里,它又回到了 1-5%,但页面加载仍然需要大约 30 秒。
我安装了 mod_status 来查看实际连接。但不知道现在该怎么做。有没有办法调试导致页面加载量过大的原因?
这里有一些配置。
<VirtualHost *:80>
ServerAdmin admin@localhost
DocumentRoot /var/www/
ServerName my-domain.com
ServerAlias my-domain.de
ServerAlias my-domain.co.uk
ServerAlias my-domain.fr
ServerAlias my-domain.es
<Location /server-status>
SetHandler server-status
Order Deny,Allow
Allow from all
Allow from .foo.com
</Location>
<Directory />
Options FollowSymLinks
# AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
# AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
error.log(只是有时显示)
zend_mm_heap corrupted
[Fri Feb 06 12:55:21 2015] [notice] caught SIGTERM, shutting down
[Fri Feb 06 12:55:22 2015] [notice] Apache/2.2.22 (Debian) PHP/5.4.4-14+deb7u14 configured -- resuming normal operations
昨天也是这样,但不是最后一次。也许我已经解决了这个问题……
[2015 年 2 月 5 日星期四 20:49:54] [错误] [客户端 92.225.106.196] 请求超出了 10 次内部重定向的限制,这可能是由于配置错误。如有必要,请使用“LimitInternalRecursion”增加限制。使用“LogLevel debug”获取回溯。
服务器状态(抱歉,太大了,无法正确显示,我也 xxxx 我的 ip)
Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request
0-0 9225 0/42/159 _ 13.58 25 10230 0.0 0.75 1.69 x.x.x.x my-domain.com POST /wp-cron.php?doing_wp_cron=1423231749.3968889713287353
1-0 9377 0/0/121 W 0.00 11 0 0.0 0.00 3.17 x.x.x.x my-domain.com POST /vop/wp-admin/admin-ajax.php?app_media_manager=1 HTTP/1.1
2-0 - 0/0/173 . 13.35 20 0 0.0 0.00 2.83 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
3-0 9130 0/47/148 _ 22.36 22 11045 0.0 0.63 1.31 x.x.x.x my-domain.com POST /wp-cron.php?doing_wp_cron=1423231751.5135180950164794
4-0 9236 0/56/222 _ 11.30 13 447 0.0 2.44 6.26 x.x.x.x my-domain.com GET /wp-content/uploads/2015/01/video.mp4 HTTP/1.1
5-0 9237 0/37/120 _ 14.69 26 1 0.0 0.75 1.68 x.x.x.x my-domain.com NULL
6-0 9238 0/63/131 _ 11.29 22 27297 0.0 0.61 3.93 x.x.x.x my-domain.com GET / HTTP/1.1
7-0 9378 0/2/168 _ 0.00 5 1 0.0 0.00 2.80 x.x.x.x my-domain.com NULL
8-0 - 0/0/121 . 0.00 1024 0 0.0 0.00 1.46 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
9-0 9045 0/85/135 _ 20.94 15 1 0.0 0.47 3.57 x.x.x.x my-domain.com NULL
10-0 - 0/0/91 . 9.42 12 0 0.0 0.00 1.45 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
11-0 - 0/0/82 . 43.88 1445 0 0.0 0.00 0.77 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
12-0 8996 0/63/73 W 29.47 5 0 0.0 2.17 2.63 x.x.x.x my-domain.com GET / HTTP/1.1
13-0 - 0/0/78 . 27.96 1011 0 0.0 0.00 2.25 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
14-0 - 0/0/61 . 25.47 1014 1 0.0 0.00 1.25 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
15-0 - 0/0/41 . 40.80 1047 0 0.0 0.00 0.18 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
16-0 - 0/0/10 . 0.00 1771 0 0.0 0.00 0.15 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
17-0 - 0/0/15 . 18.70 1492 0 0.0 0.00 0.31 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
18-0 - 0/0/9 . 0.00 3728 0 0.0 0.00 0.00 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
19-0 - 0/0/11 . 10.47 3706 0 0.0 0.00 1.00 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
20-0 - 0/0/12 . 8.83 3909 0 0.0 0.00 0.00 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
21-0 - 0/0/9 . 10.56 3888 0 0.0 0.00 0.00 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
22-0 - 0/0/39 . 15.21 3721 0 0.0 0.00 0.92 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
23-0 - 0/0/8 . 8.80 3931 0 0.0 0.00 0.21 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
24-0 8488 0/203/203 W 73.61 0 0 0.0 5.83 5.83 x.x.x.x my-domain.com GET /server-status?refresh=N HTTP/1.1
25-0 - 0/0/10 . 7.91 3890 0 0.0 0.00 0.15 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
26-0 - 0/0/3 . 2.33 4258 0 0.0 0.00 0.00 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
27-0 - 0/0/3 . 0.00 4286 0 0.0 0.00 0.00 127.0.0.1 my-domain.com OPTIONS * HTTP/1.0
access.log 仅显示插件的 POST 和 GET 结果,但我认为没有什么重要的。
也许有必要提一下,初始请求耗时很长!当我进行页面加载时,第一个请求耗时很长,完成后就很快了。
有没有办法使用工具来调试我的 PHP 代码、MySQL 查询或 Javascript(我猜是 Java 的 Browserdebugger,对吧)?
附言:当我激活“W3 Total Cache”时,第一个请求和整个页面加载都很顺利,但我需要在 Wordpress-Backend 上工作,而且在开发上等待那么长时间也很无趣。