Apache грузит систему на 100%

morozovsk
На сайте с 12.01.2007
Offline
34
9461

Вот такая проблема Apache грузит систему на 100%, это видно по логам и не только, больше из логов ничего выяснить не получилось.

Как выяснить, какой именно скрипт грузит систему?

Система очень большая и локализовать проблему не удаётся.

Подскажите как и где именно смотреть в логах или использовать утилиты.

Заранее благодарю :)

кстати, чтобы никто ничего плохого не подумал, то это я интересуюсь не для себя (не для того сайта, который в подписи)
а другу хочу помочь.

Лучшие партнёрки: обзор, сравнение, голосование (http://multifree.ru/) тизеры и контекст (http://multifree.ru/message/2749-1-11/) абалденные тизеры (http://multifree.ru/message/3003-1-11/)
B
На сайте с 06.04.2006
Offline
24
#1
morozovsk:
Вот такая проблема Apache грузит систему на 100%, это видно по логам и не только, больше из логов ничего выяснить не получилось.
Как выяснить, какой именно скрипт грузит систему?
Система очень большая и локализовать проблему не удаётся.
Подскажите как и где именно смотреть в логах или использовать утилиты.
Заранее благодарю :)

http://my-site.ru/server-status Пробовали?

Он покажет что сейчас творится с сервером.

Мониторинг сайтов (http://hostpulse.ru/), серверов, проверка содержимого страниц.
morozovsk
На сайте с 12.01.2007
Offline
34
#2
blaize:
Он покажет что сейчас творится с сервером.

это что шутка? :) а где же тогда :)

morozovsk
На сайте с 12.01.2007
Offline
34
#3

кстати, чтобы никто ничего плохого не подумал, то это я интересуюсь не для себя (не для того сайта, который в подписи)

а другу хочу помочь.

B
На сайте с 06.04.2006
Offline
24
#4
morozovsk:
это что шутка? :) а где же тогда :)

Это не шутка.:)

Надо разрешить этот путь в конфиге апача, лучше запаролить и запретить всем кроме вашего провайдера (или локалхоста).

Вот пример для незапароленного локалхоста (и только для него).

Если так сделаете, то сможете смотреть с самого сервера, зайдя через ssh.

 <Location /server-status>

SetHandler server-status

Order Deny,Allow
Deny from all
Allow from localhost
</Location>
http://httpd.apache.org/docs/2.0/ru/mod/mod_status.html

Он выдаёт примерно такое (сейчас колонки немного смещаются при отобращении):

Scoreboard Key:

"_" Waiting for Connection, "S" Starting up, "R" Reading Request,
"W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
"C" Closing connection, "L" Logging, "G" Gracefully finishing,
"I" Idle cleanup of worker, "." Open slot with no current process

Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request
0-9 25290 0/58/17117 _ 30.40 13 0 0.0 0.07 25.06 167.23.241.61 ******.ru GET /images/img12.jpg HTTP/1.1
0-9 25290 1/30/17962 K 30.69 3 89 0.0 0.08 24.99 194.67.28.13 ******.ru GET /index.php?action=12 HTTP/1.1
0-9 25290 0/31/17530 _ 30.25 16 0 0.0 0.09 23.44 167.23.241.61 ******.ru GET /data/dqata.html HTTP/1.1
morozovsk
На сайте с 12.01.2007
Offline
34
#5

Просто огромное спасибо :)

Andreyka
На сайте с 19.02.2005
Offline
822
#6
morozovsk:
Вот такая проблема Apache грузит систему на 100%, это видно по логам и не только, больше из логов ничего выяснить не получилось.

Рекомендую поставить перед apache nginx, а позади php в режиме fastcgi :)

Не стоит плодить сущности без необходимости
C
На сайте с 14.01.2007
Offline
1
#7

Попробуй в конфиге установить Keepalive Off.

Снимало нагрузку на 50%.

Чтобы локализировать тормозной скрипт, надо замерять время выполнения участков кода в микросекундах и выявлять "слабое звено".

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий