Re[2]: Нагрузка на FreeBSD
Yuri Kushinov
yuri.kushinov at gmail.com
Sat Jan 13 16:01:22 MSK 2007
Хоть это напрямую с вашей проблемой может быть и не не связано,
но косвенно это её всё же затрагивает.
Про Апач
> LoadModule mmap_static_module libexec/apache/mod_mmap_static.so
> LoadModule vhost_alias_module libexec/apache/mod_vhost_alias.so
> LoadModule env_module libexec/apache/mod_env.so
> LoadModule config_log_module libexec/apache/mod_log_config.so
> LoadModule mime_magic_module libexec/apache/mod_mime_magic.so
> LoadModule mime_module libexec/apache/mod_mime.so
> LoadModule negotiation_module libexec/apache/mod_negotiation.so
> LoadModule status_module libexec/apache/mod_status.so
> LoadModule info_module libexec/apache/mod_info.so
> LoadModule includes_module libexec/apache/mod_include.so
> LoadModule autoindex_module libexec/apache/mod_autoindex.so
> LoadModule dir_module libexec/apache/mod_dir.so
> LoadModule cgi_module libexec/apache/mod_cgi.so
> LoadModule asis_module libexec/apache/mod_asis.so
> LoadModule imap_module libexec/apache/mod_imap.so
> LoadModule action_module libexec/apache/mod_actions.so
> LoadModule speling_module libexec/apache/mod_speling.so
> LoadModule userdir_module libexec/apache/mod_userdir.so
> LoadModule alias_module libexec/apache/mod_alias.so
> LoadModule rewrite_module libexec/apache/mod_rewrite.so
> LoadModule access_module libexec/apache/mod_access.so
> LoadModule auth_module libexec/apache/mod_auth.so
> LoadModule anon_auth_module libexec/apache/mod_auth_anon.so
> LoadModule db_auth_module libexec/apache/mod_auth_db.so
> LoadModule digest_module libexec/apache/mod_digest.so
> LoadModule proxy_module libexec/apache/libproxy.so
> LoadModule cern_meta_module libexec/apache/mod_cern_meta.so
> LoadModule expires_module libexec/apache/mod_expires.so
> LoadModule headers_module libexec/apache/mod_headers.so
> LoadModule usertrack_module libexec/apache/mod_usertrack.so
> LoadModule log_forensic_module libexec/apache/mod_log_forensic.so
> LoadModule unique_id_module libexec/apache/mod_unique_id.so
> LoadModule setenvif_module libexec/apache/mod_setenvif.so
> LoadModule php4_module libexec/apache/libphp4.so
Если это возможно, отключите подгрузку всех модулей кроме тех что
вам реально нужны. Это сократит затраты пямати/процесс Апача раза в
полтора.. И, рассуждая логически, ускорит Апач.
> LoadModule mime_module libexec/mod_mime.so
> LoadModule mime_magic_module libexec/mod_mime_magic.so
> LoadModule dir_module libexec/mod_dir.so
> LoadModule config_log_module libexec/mod_log_config.so
> LoadModule access_module libexec/mod_access_rbl.so
> LoadModule php4_module libexec/libphp4.so
> LoadModule rewrite_module libexec/mod_rewrite.so
> LoadModule status_module libexec/mod_status.so
Рабочий минимум (mod_access можно убрать). Вам скорее всего
понадобятся дополнительгые модуля исходя из специфики вашей задачи,
но настоятельно рекомендую "облегчить" Апач.
Про nginx.
Судя по вашим словам форум у вас достаточно большой, что значит что в
единицу времени на динамический контент идёт достаточное кол-во
запросов/сек. Но ваши конфиги никак не оптимизированы под ваш
конкретный случай.
> proxy_buffers 8 64k;
> proxy_buffer_size 64k;
Буфферов слишком мало. Поднимите их кол-во раз эдак в 20, и
посмотрите на результат.
Размер буферов у вас слишком мал. Форумы обычно генерят сотни
килобайт HTML, и они никак не поместятся в 64к. Замерьте размер HTML
самой большой страницы о которой вы знаете и поставте размер буферов
соответственно, добавив процентов 15 сверху, про запас.
Советую экспериментировать. Если правильно всё настроить, Апач будет
быстренько отдавать весь ответ nginx и завершать поток/процесс - а не
ждать чего-то.
> gzip on;
> gzip_min_length 1100;
> gzip_buffers 4 8k;
> gzip_types text/plain;
Не вижу смысла тратить процессорные ресурсы на сжатие контента
размером меньше чем, скажем, 32к.
Та же проблема с буфферами, как с количеством так и с размерами..
правда размер тут проставте от proxy_biffers/3, (на случай худшей
возможной компрессии от gzip, в 3 раза).
Кол-во придётся подбирать экспериметнально.
> output_buffers 1 32k;
Кто-то может просветить по поводу директивы output_buffers,
пожалуйста? А то кол-во в "1" смущает...
> keepalive_timeout 750 400;
Невероятный Keepalive, товарищ 0_o
У вас наверное список открытых соединений мегабайт занимает..
Не вижу смысла выставлять это значение выше 10, особенно для busy
серверов. Вы просто себе это не пожете позволить - да и в этом нет
смысла.
--
Best regards,
Yuri Kushinov mailto:yuri.kushinov at gmail.com
More information about the nginx-ru
mailing list