Если perl'овый модуль выполняет длительную операцию, например, определяет
адрес по имени, соединяется с другим сервером, делает запрос к базе
данных, то на это время все остальные запросы данного рабочего процесса не
будут обрабатываться.
У меня на одном сервисе около пары сотен коннектов в секунду и при каждом
nginx делает кучу операций в базе данных, причем не на локалхосте.. и
это все работает очень стабильно вот уже четвертый месяц.. так, что
такие выводы весьма субъективные и зависят от многих факторов.
Вариант от Alexey Polyakov - X-Accel-Redirect + post_action -
мне кажется более жизнеспособным. Потому что общением с БД будет
заниматься другой процесс.
Реализовал идею с perl_set. Все отлично получилось. То что надо!
Всем огромное спасибо, проблемму считаю решенной!
Если перл при обработке perl_set ходит в базу, то в на всё время хождения
данный рабочий процесс nginx'а не обрабатывает другие соединения.
Именно это и называется "длительной операцей".
Игорь Сысоев
http://sysoev.ru