Большое потребление процессора. Где искать что именно потребляет и как оптимизировать

Главные вкладки

Аватар пользователя Valeratal Valeratal 23 февраля 2010 в 14:09

Собственно сабж
Проблема в том, что сайт сильно грузить процессор сервера

В связи с чем 3 вопроса

Как понять что именно?
Какие типичные процессо-емкие модули, сниппеты, настройки друпала существуют?
Какие способы оптимизации существуют?

Заранее спасибо

Комментарии

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 23 февраля 2010 в 14:18

"Valeratal" wrote:
Как понять что именно?

Как правило два варианта:
1. Апач
2. Мускуль
Кроме того что грузит index.php, ты ничего особо не узнаешь
"Valeratal" wrote:

Какие типичные процессо-емкие модули, сниппеты, настройки друпала существуют?

Panels, Views, imagecache во время создания изображения, etc...
Зависит больше от того как они используются
"Valeratal" wrote:

Какие способы оптимизации существуют?

Зависит от прошлого шага.
Вообще сначала надо диагностировать причину, потом искать способы оптимизации

Аватар пользователя Valeratal Valeratal 23 февраля 2010 в 18:30

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

Аватар пользователя egorovanton egorovanton 23 февраля 2010 в 18:26

Вариант №2:
Перенос всего полностью под Nginx + FastCGI + Memcache. Производительность вырастает в разы, но с администрированием чуть-чуть сложнее становится.

Аватар пользователя Stalker-g2 Stalker-g2 23 февраля 2010 в 22:54

<a href="mailto:egorovanton@drupal.org">egorovanton@drupal.org</a> wrote:
Вариант №2:
Перенос всего полностью под Nginx + FastCGI + Memcache. Производительность вырастает в разы, но с администрированием чуть-чуть сложнее становится.

банальное заблуждение.
переход на fastcgi сам по себе даст нулевой прирост http://dklab.ru/chicken/nablas/49.html
переход на nginx по сравнению со связкой nginx + apache может незначительный прирост и даст, однако лишит нас
а) средства мониторинга mod_status - аналога в nginx нет
б) эффективности в защите от ddos, когда мы имеем лёгкий фронтэнд с фильтрацией отдельно от динамики.

Аватар пользователя egorovanton egorovanton 23 февраля 2010 в 23:59

Stalker-g2 wrote:
<a href="mailto:egorovanton@drupal.org">egorovanton@drupal.org</a> wrote:
Вариант №2:
Перенос всего полностью под Nginx + FastCGI + Memcache. Производительность вырастает в разы, но с администрированием чуть-чуть сложнее становится.

банальное заблуждение.
переход на fastcgi сам по себе даст нулевой прирост http://dklab.ru/chicken/nablas/49.html
переход на nginx по сравнению со связкой nginx + apache может незначительный прирост и даст, однако лишит нас
а) средства мониторинга mod_status - аналога в nginx нет
б) эффективности в защите от ddos, когда мы имеем лёгкий фронтэнд с фильтрацией отдельно от динамики.

Смысл в том что как суть FastCGI не ускоряет ничего, а в связке с memcache всё праздник. Потому что и то и то весит и держит всё в памяти. Фактически если есть возможность жирного объёма оперативки, то почему бы и нет.

А относительно DDOS, его ещё надо добиться, а в рамка не высоконагруженных проектов ничего не грозит. Да и не соглашусь, под Nginx туева шуча средств. Гугл в руки вам.

А относительно http://server-tuning.info/apache/mod_status.html это тоже нужно тем кто не умеет работать в обход.

Аватар пользователя Valeratal Valeratal 23 февраля 2010 в 18:42

вот буквально пока я создавал тему, мне поставили и мемкэш и акселлератор (нжинс уже был)
по тестам выросло раза в 3, субъективно тоже

правда, вопрос остался открытым

еще, можно поставить

xdebug, там есть профайлер, можно посмотреть,
какие функции больше времени выполнения
занимают и смотреть их
Аватар пользователя Stalker-g2 Stalker-g2 24 февраля 2010 в 9:31

«его ещё надо добиться»
когда добьёшься - будет поздно выстраивать архитектуру. я сталкивался - я знаю.

«Да и не соглашусь, под Nginx туева шуча средств. Гугл в руки вам»
да ну? докажите-ка? покажите мне аналог статуса - тулзу, которая покажет, чем конкретно и насколько занят сервер в текущий момент.

«это тоже нужно тем кто не умеет работать в обход»
в смысле - кто не умеет работать через задницу? Smile мод_статус нужен тем, кто хочет всегда знать, чем загружен его сервер.