Re: Хочется странного (синхронно/асинхронные запросы)

Alexandre Snarskii snar на snar.spb.ru
Ср Апр 25 11:49:39 UTC 2012


On Wed, Apr 25, 2012 at 03:11:51PM +0400, Andrey Velikoredchanin wrote:
> 25 апреля 2012 г. 14:38 пользователь Alexandre Snarskii <snar at snar.spb.ru>
> написал:
> 
>     Я не уверен, что хорошо понял задачу, но я бы посмотрел в сторону
>     https://github.com/calio/beanstalkd-nginx-module
>     в примерно следующем сценарии:
> 
>     Начальный запрос поступает на простой fastcgi который делает необходимую
>     предобработку и формирование таски в beanstalk'е (в частности, с указанием
>     уникальной "очереди ответа"), после чего возвращает "управление" в nginx
>     с помощью X-Accel-Redirect на спец. location, который и ждет появления
>     ответа в этой самой уникальной очереди. А уж кто и как обрабатывает
>     задачи из очередей beanstalk'а - совершенно отдельный вопрос.
> 
> 
> Вот этот вариант очень похож на то что нужно за исключеним одного - в конце в
> ответ на первоначальный запрос должен возвращаться ответ, который сгенерирован
> "где-то там" при асинхронной обработке. А не просто сообщение что запрос
> обработан.

"Запрос отработан" возвращается не клиенту, а nginx'у, на первой фазе
обработки. Клиенту, после второй фазы обработки запроса (ожидание _ответа_ 
в уникальной очереди) возвращается именно этот ответ, и что уж в нем 
содержится - на совести разработчика того кого-нибудь, кто этот ответ 
в очередь ставит :) 

-- 
In theory, there is no difference between theory and practice. 
But, in practice, there is. 



Подробная информация о списке рассылки nginx-ru