Назад | Перейти на главную страницу

Как использовать oprofile, чтобы найти узкое место на нашем веб-сервере?

Обновлено:

================================================== ============== Я наконец нашел причину в oprofile. Это произошло потому, что кеш маршрутизации Symfony. У нас много страниц с разными URL-адресами, и symfony кеширует их в один файл (сериализованные данные). Таким образом, файл кеша становится большим, и ему требуется больше ЦП для сериализации и десериализации данных.

Все прошло хорошо после того, как я отключил кеш маршрутизации

================================================== ==============

Недавно я обновил свою программу PHP на своем веб-сервере (Centos 5.3 + PHP 5.2.6), но она сильно нагружает мой сервер. Поэтому я решил использовать oprofile, чтобы выяснить, что замедляет работу моего сервера.

Я успешно установил oprofile, но что дальше? Есть ли у кого-нибудь практический опыт настройки сервера apache?

Спасибо ~

Вы уже знаете, что делает его медленным: PHP. Я думаю, вам было бы лучше использовать профилировщик PHP, если он существует.

Основное использование oprofile описано в руководстве. opconfig --start; подождите немного ; opreport; opconfig --stop. Это перечислит имена символов функций, занимающих больше всего времени. Как вы отразите это на улучшениях - большой открытый вопрос, который требует более подробной информации.