URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 7163
[ Назад ]

Исходное сообщение
"nginx с limit_conn и ajax"

Отправлено mar , 04-Мрт-11 15:25 
Добрый день,
на достаточно нагруженном и посещаемом сервере стоит связка ngnix+apache. Ngnix отдает статику, apache разбирается с php.

Поскольку на сайт повадились ходить с многопоточными качалками (да еще криво настроенными), на ngnix было включено ограничение одновременно открытых соединений через limit_conn.

В результате 503 ошибка стала появляться при использовании ajax.

Проблему снизили, увеличив количество одновременно разрешенных соединений с 1 до 3 и вставив задержку перед посылкой ajax, идущей по onchange в текстовом поле. Но не знает ли кто-нибудь более красивого системного решения этой проблемы?


Содержание

Сообщения в этом обсуждении
"nginx с limit_conn и ajax"
Отправлено Константин , 11-Мрт-11 12:42 
А если для локейшн(а|ов) куда отправляются ajax-запросы убрать limit_conn?
Или туда тоже качалками ломятся?

"nginx с limit_conn и ajax"
Отправлено mar , 11-Мрт-11 12:51 
> А если для локейшн(а|ов) куда отправляются ajax-запросы убрать limit_conn?
> Или туда тоже качалками ломятся?

там, поскольку используется mod_rewrite, получается, что это те же локейшены, что и для основных запросов



"nginx с limit_conn и ajax"
Отправлено Константин , 11-Мрт-11 14:09 
> там, поскольку используется mod_rewrite, получается, что это те же локейшены, что и
> для основных запросов

Я бы переопределил отдельный локейшн для аяксов. Например с параметров http://test.ru/.../?ajax=true
А для него уже убрал бы limit_conn

ИМХО, самое простое решение.


"nginx с limit_conn и ajax"
Отправлено mar , 11-Мрт-11 14:15 
>> там, поскольку используется mod_rewrite, получается, что это те же локейшены, что и
>> для основных запросов
> Я бы переопределил отдельный локейшн для аяксов. Например с параметров http://test.ru/.../?ajax=true
> А для него уже убрал бы limit_conn
> ИМХО, самое простое решение.

Спасибо, подумаю