Непонятки с nginx [message #40288] |
Mon, 09 August 2010 13:11 |
stanlee
Messages: 33 Registered: April 2010
|
Member |
|
|
Заметил странное поведение nginx, при старте работает нормально, гдето через минуту тупит по 3-4 минуты и только потом отдает и тд до перезагрузки
первый опыт в ве, может что то не докрутил с ве?
barrier вроди не превышен
|
|
|
Re: Непонятки с nginx [message #40294 is a reply to message #40288] |
Mon, 09 August 2010 17:39 |
RXL_
Messages: 147 Registered: July 2009 Location: Moscow/Russia
|
Senior Member |
|
|
Думаю дело в DNS.
Другой кандидат в причины - нагруженный винт, т.к. nginx запросы длиннее 8/16 кБ сбрасывает во временные файлы.
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
[Updated on: Mon, 09 August 2010 17:40] Report message to a moderator
|
|
|
Re: Непонятки с nginx [message #40295 is a reply to message #40288] |
Mon, 09 August 2010 18:11 |
stanlee
Messages: 33 Registered: April 2010
|
Member |
|
|
не винт вряд ли, сервер не нагружен
днс можно было бы подумать, но почему тогда при рестарте нгинкса он отдавал нормально?
сейчас весь вечер все нормально работает, но причина так и не выявлена
|
|
|
|
Re: Непонятки с nginx [message #40316 is a reply to message #40314] |
Tue, 10 August 2010 18:07 |
RXL_
Messages: 147 Registered: July 2009 Location: Moscow/Russia
|
Senior Member |
|
|
У меня nginx стоит на одной VE и раздает запросы на http-сервера (не только Апач) на других VE. За два года работы с nginx проблем не было. Nginx собираю сам из исходников стабильной версии. Работал с версиями 0.6 и 0.7 и ни разу не имел описанных проблем. ОС для HN - CentOS 5, 32- и 64-bit. ОС для VE - CentOS 5 32-bit, FC 9-12 32-bit. С "тонкими" настройками, касающимися синхронизации IO, не мудрил, а использовал выбираемые автоматом (для каждой ОС они предпочтительны разные; для Linux 2.6 - epoll).
Могу поделиться базовыми настройками nginx.
(!) При использовании venet0 трафик маршрутизится через HN - первым делом надо проверять там.
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
[Updated on: Tue, 10 August 2010 18:07] Report message to a moderator
|
|
|
Re: Непонятки с nginx [message #40317 is a reply to message #40316] |
Tue, 10 August 2010 19:18 |
stanlee
Messages: 33 Registered: April 2010
|
Member |
|
|
с нгинксом я года 4 знаком, умею настраивать и все устраивает
но в ve он чудит
может что то с параметрами ve?
у меня еще странное подозрение что что то изза разных мест тестирования
на работе только такое проявляется, дома же он тут как тут
мистика какая то
|
|
|
Re: Непонятки с nginx [message #40318 is a reply to message #40317] |
Tue, 10 August 2010 19:33 |
RXL_
Messages: 147 Registered: July 2009 Location: Moscow/Russia
|
Senior Member |
|
|
Практика показывает, что вся мистика кроется в разнице в настройках машин. Как железных, так и виртуальных. Стоит капать в этом направлении.
Можно еще попробовать поискать схожее описание проблемы не опираясь на OpenVZ.
А виртуалки в обеих случаях - полные копии?
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
[Updated on: Tue, 10 August 2010 19:33] Report message to a moderator
|
|
|
|
|
Re: Непонятки с nginx [message #40560 is a reply to message #40558] |
Wed, 01 September 2010 10:13 |
RXL_
Messages: 147 Registered: July 2009 Location: Moscow/Russia
|
Senior Member |
|
|
/etc/nginx/nginx.conf:
daemon on;
user apache apache;
pid /var/run/nginx.pid;
error_log /var/log/nginx/error.log error;
worker_processes 2;
worker_rlimit_nofile 8192;
events {
worker_connections 4096;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main
'$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 60;
server_tokens off;
gzip on;
gzip_types text/html text/plain text/xml text/css text/javascript application/x-javascript;
client_max_body_size 4M;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $http_x_forwarded_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $http_x_forwarded_for;
upstream us_apache {
server main.local:80;
}
upstream us_redmine {
server redmine.local:3000;
}
include virtuals/*.conf;
}
В поддиректории virtuals у меня находятся конфиги виртуальных хостов.
Некоторые рекомендации:
1. Идентификатор upstream не должен совпадать с именем любого хоста!
2. Для использования X-Real-IP с Apache необходимо в него установить модуль mod_rpaf.
3. Для обеспечения работы опции worker_rlimit_nofile необходимо поднять соответствующий лимит.
4. Если Apache установлен на ту же VE, то Nginx имеет смысл запускать из-под пользователя apache, либо как-то еще обеспечить ему доступ к файлам DocumentRoot. Так можно выдавать статику без помощи Apache, что значительно снижает расход памяти последним.
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|