Добрый день,
> Кстати, после установки nginx время генерации страниц только возросло,
> процентов на 25-30. А это с чем может быть связано?
В nginx есть достаточное количество настроек, которые надо подгонять
конкретно под каждый случай, чтобы добится оптимальной
производительности. Дефолтные конфиги, как alex946 написал - подходят
только в качестве примера.
Напримет на время генерации страницы в том или ином плане могут
повлиять следующие параметры
(http://wiki.codemongers.com/Nginx)
client_header_buffer_size
gzip_buffers
keepalive_timeout
proxy_buffer_size
proxy_buffers
В вашем же конкретном случае у вас
1. 4 gzip буффера по 8к, при включённом gzip'е. Это для одного сайта
мало, а уж для масс-хостинга так вообще не приемлемо.
Размер также стоит подобрать исходя от размера страниц, которые nginx
получает от бэкэнда. Поделите скажем на 3 (худшую степень сжатия).
2. 1 output buffer на 32к,
По правде говоря я не знаю на что влияет эта директива, но цифра "1",
опят таки же для масс-хостинга, вызывает подозрения.
3. Невероято огромный keepalive. Секунд 10, а то и меньше вполне
должно хватить.
4. gzip_min_length довольно мал. Не вижу причины тратить ресуры на сжатие
контента длинной меньше, скажем, тех же 10к
5. client_header_buffer_size может оказатся мал, в зависимоти от того
насколько много кук вы храните у пользователей.
В случае если размер кук велик - информация будет записана на диск,
что приводит к дополнинельной нагрузке на I/O и, соответственно,
задержке обработки запроса.
6. 4 proxy_buffers по 32к. Ну это уже просто не серьёзно.
На все запросы на динамический контент у вас всего навсего 4 буффера.
Помогите Апачу завершать соединения побыстрее, увеличте количество
буфферов раз эдак в 30.
Также настройте размер буфферов соответственно размеру ответа,
приходящего от бэкэнда.
Также, если ваш Апач более не занимается раздачей статики, советую
вам убрать в нём keepalive.
--
Best regards,
Yuri Kushinov mailto:yuri.kushinov@xxxxxxxxx