On Tue, Sep 26, 2017 at 04:07:34AM -0400, EugeneNF wrote: > Тут-то и возникает противоречие - как приложению узнать, что второй запрос > блокирован поскольку nginx ждёт окончания первого запроса? Решение видится > в два этапа - первое nginx просто обрывает первый запрос.
Каким образом? Вместо абстрактных фантазий лучше напишите конкретно что значит "обрывает запрос" -- какие системные вызовы используются, что отправляется клиенту, что серверу приложений? Почему вы думаете, что сервер приложений чего-то ждёт от апстрима, чтобы срочно прервать свою работу? А если не ждёт, то как он узнает, что запрос нужно прекратить обрабатывать? > А приложение уже решает, что же делать при потере связи с клиентом, Как оно узнает о потере связи? Конкретный механизм, pls. Какие вызовы, какие пакеты пересылаются, какие сигналы/ошибки/etc получает процесс. > т.е. заканчивает работу > с закрытием всего открытого - файлов, баз данных и т.д. А если базе отправлен запрос, который она будет молотить долгое время, как его прервать? Это точно такая же проблема, которая возникает при взаимодействии сервера приложений и nginx, между которыми нет никакой асинхронной коммуникации. -- Eugene Berdnikov _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru