Re: No more than 1024 processes can be spawned
Hello! On Tue, Jul 07, 2015 at 05:47:03PM -0400, BieZax wrote: Добрый день. Подскажите пожалуйста, что значит сабж в error логе. У вас сконфигурировано слишком много рабочих процессов, и nginx упёрся в органичение на количество процессов, которое он умеет обслуживать (1024 на unix-системах). -- Maxim Dounin http://nginx.org/ ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: No more than 1024 processes can be spawned
Maxim Dounin Wrote: --- Hello! On Tue, Jul 07, 2015 at 05:47:03PM -0400, BieZax wrote: Добрый день. Подскажите пожалуйста, что значит сабж в error логе. У вас сконфигурировано слишком много рабочих процессов, и nginx упёрся в органичение на количество процессов, которое он умеет обслуживать (1024 на unix-системах). -- Maxim Dounin http://nginx.org/ ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru Странно, т.к. worker_processes 24; И проблема вылезает во время ротации логов, а до этого стабильно ps | grep -c nginx 27 Проблема появилась с 1.8. Сначала думал , что дело в lua, т.к. в логах было что-то типа failed to initialize Lua VM in /usr/local/etc/nginx/nginx.conf:108 Но выпиливание модуля из сборки проблемы не решило. в 1.6 проблема не наблюдается Posted at Nginx Forum: http://forum.nginx.org/read.php?21,260127,260136#msg-260136 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Вопрос про map, переменные и аргументы
Добрый день. Есть сервер на NGINX. У него за бэкендом находятся несколько шардов. Запросы к NGINX приходят с переменной *code*. В переменной хранится строка случайных символов. Есть файл с таблицей типа: 1e3c37d24147296e4993029da7ad0b 0; 56c0334642d423e642f163e06f985f 0; e0252dffdc9bb45183340209c53efa 0; 0f89f5209b84486787797f42bb3939 1; ced412f1c43cda14c8bdfedb353cd5 1; Слева *code*, справа значение переменной, которое я хочу устанавливать в соответствии с кодом. Прописано это все вот так: http { ... map_hash_max_size 8192; map $arg_code $api_shard { include /home/user/nginx_mapping.conf; } ... } Когда я выполняю GET-запросы, переменная устанавливается и все хорошо. Когда я выполняю POST-запросы, переменная не устанавливается, т.к. в GET не пришел аргумент *code*. Как можно получить доступ к аргументу в POST запросе, чтобы выставить нужную переменную? Заставить все проекты прописать в адрес ко всем POST-запросам аргумент ?code=xyz будет несколько проблематично. ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: No more than 1024 processes can be spawned
Hello! On Wed, Jul 08, 2015 at 07:43:39AM -0400, BieZax wrote: Maxim Dounin Wrote: --- Hello! On Tue, Jul 07, 2015 at 05:47:03PM -0400, BieZax wrote: Добрый день. Подскажите пожалуйста, что значит сабж в error логе. У вас сконфигурировано слишком много рабочих процессов, и nginx упёрся в органичение на количество процессов, которое он умеет обслуживать (1024 на unix-системах). Странно, т.к. worker_processes24; И проблема вылезает во время ротации логов, а до этого стабильно ps | grep -c nginx 27 Если для ротации логов используется SIGHUP с перечитыванием конфигурации и запусоком новых рабочих процессов (что неправильно, надо слать USR1) - то это может быть следствием того, что скапливается много старых рабочих процессов, которые ещё не успели завершиться. Использование USR1 проблему вылечит. Подробнее тут: http://nginx.org/ru/docs/control.html#logs Проблема появилась с 1.8. Сначала думал , что дело в lua, т.к. в логах было что-то типа failed to initialize Lua VM in /usr/local/etc/nginx/nginx.conf:108 Но выпиливание модуля из сборки проблемы не решило. в 1.6 проблема не наблюдается Если проблема не объясняется вышеописанным, имеет смысл для начала убедиться, что проблема воспроизводится без сторонних модулей. -- Maxim Dounin http://nginx.org/ ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
400 Bad Request
Добрый день! Столкнулся с 400 ошибкой, увеличение параметра large_client_header_buffers 32 16k; не дает результата. Включал error_log c уровнем ошибок info, ошибок связанных с этим запросом не нашел. Включил error_log в режиме debug, но к сожалению так и не смог понять суть ошибки. Привожу дополнительную информацию: debug: http://pastebin.com/QJW2ZqSN nginx -V: http://pastebin.com/WJ97eg0R nginx-conf: http://pastebin.com/hPdZQpWh По задумке nginx проксирует запросы на 5.5.5.5, а статический контент определенный в отдельном location пытается получить у varnish. Varnish в случае если запрошенного контента нет в кеше идет за ним на 10.0.2.3 на котором слушает nginx, и получает напрямую с сервера 5.5.5.5. В upstream блоке сделана защита на случай недоступности сервера с varnish, определен прямой backup сервер 5.5.5.5. Если я убираю с upstream блока backup-сервер, то схема работает без 400-ошибок. Ошибки выдает только на статический контент и бессистемно. Прошу помощи в поиске ошибки. Posted at Nginx Forum: http://forum.nginx.org/read.php?21,260140,260140#msg-260140 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: 400 Bad Request
Спасибо! Вы очень помогли. Posted at Nginx Forum: http://forum.nginx.org/read.php?21,21197,260146#msg-260146 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: 400 Bad Request
On Wednesday 08 July 2015 10:19:41 Oleg Kupr wrote: Добрый день! Столкнулся с 400 ошибкой, увеличение параметра large_client_header_buffers 32 16k; не дает результата. [..] А с чего вы решили, что ошибку выдает ваш nginx? Судя по логам, 400 ответа получен от вышестоящего сервера. -- Валентин Бартенев ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: 400 Bad Request
Hello! On Wed, Jul 08, 2015 at 10:19:41AM -0400, Oleg Kupr wrote: Добрый день! Столкнулся с 400 ошибкой, увеличение параметра large_client_header_buffers 32 16k; не дает результата. Включал error_log c уровнем ошибок info, ошибок связанных с этим запросом не нашел. Включил error_log в режиме debug, но к сожалению так и не смог понять суть ошибки. Привожу дополнительную информацию: debug: http://pastebin.com/QJW2ZqSN nginx -V: http://pastebin.com/WJ97eg0R nginx-conf: http://pastebin.com/hPdZQpWh По задумке nginx проксирует запросы на 5.5.5.5, а статический контент определенный в отдельном location пытается получить у varnish. Varnish в случае если запрошенного контента нет в кеше идет за ним на 10.0.2.3 на котором слушает nginx, и получает напрямую с сервера 5.5.5.5. В upstream блоке сделана защита на случай недоступности сервера с varnish, определен прямой backup сервер 5.5.5.5. Если я убираю с upstream блока backup-сервер, то схема работает без 400-ошибок. Ошибки выдает только на статический контент и бессистемно. Прошу помощи в поиске ошибки. Вам 400 возвращает бекенд: 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 connect to 5.254.116.202:443, fd:1363 #257147662 ... 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 recv: fd:1363 823 of 32768 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy status 400 400 Bad Request 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy header: Server: nginx/1.6.2 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy header: Date: Tue, 07 Jul 2015 14:10:54 GMT 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy header: Content-Type: text/html 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy header: Content-Length: 672 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy header: Connection: close 2015/07/07 17:10:52 [debug] 30118#30118: *257100135 http proxy header done На бекенде и следует смотреть, чем именно ему не понравился запрос. -- Maxim Dounin http://nginx.org/ ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: 400 Bad Request
А с чего вы решили, что ошибку выдает ваш nginx? Судя по логам, 400 ответа получен от вышестоящего сервера. -- Валентин Бартенев То-есть вполне вероятно то, что нужно увеличить large_client_header_buffers на проксируемом сервере (5.5.5.5) ? Posted at Nginx Forum: http://forum.nginx.org/read.php?21,260140,260145#msg-260145 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru