Я запускаю тему Wordpress на Google Compute Engine с Cloud SQL и Apache2 (W3 Total Cache, который сейчас отключен). На самом деле нет посетителей, кроме меня, потому что он находится в разработке.
Проблема начинается практически с нуля. Я работал над сайтом, когда загрузка страницы начала расти. Но это не могло быть провалом, потому что я отменял все, что делал. ЦП поднимается с 1-5% до 80% на 10 процессах, идущих в Apache.
В последние дни он возвращается к 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
и это вчера, но не в последний раз. Может, я это уже исправил ...
[Чт, 05 фев, 20:49:54 2015] [ошибка] [клиент 92.225.106.196] Запрос превысил лимит в 10 внутренних перенаправлений из-за возможной ошибки конфигурации. При необходимости используйте LimitInternalRecursion, чтобы увеличить лимит. Используйте «Отладка LogLevel», чтобы получить трассировку.
server-status (извините за большое для правильного отображения, также я x.x.x.x. мой 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 с помощью инструмента (Browserdebugger для java, я думаю, правильно?)?
p.s .: Когда я активирую "W3 Total Cache", первый запрос и загрузка страницы с дыркой идет как шарм, но мне нужно работать над Wordpress-Backend, и над его разработкой тоже неинтересно ждать так долго ..