Тесты Apache действительно плохие, есть ли какие-нибудь советы?

Используя Apache Bench, домашняя страница моего сайта может обрабатывать только 0,42 запроса в секунду. Простая страница phpinfo() может обрабатывать 31,99 запросов в секунду, что кажется очень медленным для такого простого скрипта. Очевидно, что моя домашняя страница, обрабатывающая 0,42 запроса, неприемлема.

Я использую Apache 2.2 на Windows Server 2008. 4 ГБ ОЗУ, процессор Intel Xeon с тактовой частотой 2,4 ГГц.

Сайт построен на PHP CMS Expression Engine с базой данных MySQL. Expression Engine имеет действительно агрессивное кэширование страниц, поэтому домашняя страница во всех смыслах статична (происходит некоторая обработка, но в итоге она просто сохраняет статический файл на жестком диске). У меня также включено кэширование SQL (выделено 200 МБ). Когда страница не кэшируется, на домашней странице есть 84 запроса, что не кажется слишком сумасшедшим.

У кого-нибудь есть какие-нибудь очевидные идеи относительно того, как я могу заставить эту вещь работать лучше? Какие-то настройки php.ini, my.ini или httpd.conf, которые я должен проверить?


person LOLapalooza    schedule 25.04.2012    source источник
comment
с какой именно командной строкой вы запускали Apache Bench?   -  person    schedule 26.04.2012
comment
84 SQL-запроса по одному запросу?! Oo При каждом запросе?   -  person KingCrunch    schedule 26.04.2012
comment
@KingCrunch Запросы в основном не в моей власти, механизм выражений генерирует их массу, и это очень динамичная страница.   -  person LOLapalooza    schedule 26.04.2012
comment
я думал, вам нужен действующий utl   -  person    schedule 26.04.2012
comment
@Dagon ТАК автоматически связал это для меня, извините. Это был hxxp://localhost/   -  person LOLapalooza    schedule 26.04.2012
comment
да, это отстой, рабочий сервер выдает: Запросов в секунду: 1248,44 [#/сек] (среднее значение)   -  person    schedule 26.04.2012


Ответы (2)


Вы можете использовать обратный прокси-сервер, например Varnish, потому что самое быстрое приложение — это приложение, которое не выполняется. . Особенно хороша ESI-Support для ускорения высокодинамичных страниц.

person KingCrunch    schedule 25.04.2012
comment
Спасибо, я посмотрю на это. Поскольку страница статически кэшируется механизмом выражений на 30 минут, 84 запроса выполняются только один раз каждые 30 минут. Вот почему это так озадачивает меня. - person LOLapalooza; 26.04.2012
comment
Но он кешируется через передний контроллер EE, который все еще выполняет большую обработку, прежде чем выбросить кешированный файл. - person symcbean; 26.04.2012

Это довольно плохо. На машине, за которой я сижу, я получаю 42 страницы в секунду, используя ab -c 30 -n 1000 http://localhost/phpinfo.php, и это гораздо более простая машина, которая также делает много других вещей. Хотя он работает под управлением Linux ;)

Вы уверены, что узким местом является PHP? Если это так, попробуйте использовать кеш кода операции. В остальном это обычный процесс настройки.

на главной странице 84 запроса, что не кажется слишком сумасшедшим.

МОЙ БОГ! Может быть, не на вашей планете. Если вы ожидаете какой-либо объем трафика, вам следует смотреть на кадры ESI.

person symcbean    schedule 25.04.2012