26 января 2015 г., 16:16 пользователь Ilya Chesnokov
<[email protected]> написал:
>
> И еще - правильно я понял, что в Redis-based решениях (Queue::Q,
> Resque с CPAN) воркер должен периодически опрашивать очередь на
> наличие новых заданий?
> Просто насколько я понял, в RabbitMQ это все делается асинхронно -
> вешаем коллбэк на приход сообщения и бесконечно ждем...
> (https://github.com/rabbitmq/rabbitmq-tutorials/blob/master/perl/worker.pl)
>

Не знаю на счёт этих решиний, но в самом редис всё с этим OK - есть
команды типа BLPOP. Про запуске команды клиент ждёт пока в очереди
что-то появится, потом моментально разблокируется, без всякого опроса
сервера (будет ли выглядеть API как коллбэк - это перпендикулярно). В
Rails Resque, Rails Sidekiq, и в очереди REGRU, про которую расскажет
Иван Соколов 5 февраля это и используется.

Можно самому посмотреть - взять исходник и погрепать blpop, brpop,
brpoplpush - если они есть, скорее всего всё ок.
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить