RabitMQ - получить пачку сообщений за один раз

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
KEFIR4UK
Сообщения: 97
Зарегистрирован: 2014.12.13, 16:24

RabitMQ - получить пачку сообщений за один раз

Сообщение KEFIR4UK » 2019.04.22, 09:24

Добрый день. Столкнулся с проблемой производитильности - и единым решением пока нашли то что нужно чтобы реббит отдавал консюмеру за один раз не одно сообщения а скажем 100. Читаю доку по ребиту - и немогу найти опцию которая за это отвечает. Может кто нибуть поможет ?
В UI самого реббита такая штука есть..

chesar
Сообщения: 507
Зарегистрирован: 2013.04.10, 17:49

Re: RabitMQ - получить пачку сообщений за один раз

Сообщение chesar » 2019.04.22, 12:47

Отпишите потом как решали задачу.
Кажется в самом кролике такого нет. Консьюмер читает по одному сообщению из очереди по мере их поступления и думаю сам должен решать сколько он сообщений принял и уходить в таймаут.
Я бы посмотрел в сторону ограничения количества сообщений в самой очереди. Т.е. примерно такая схема:
Отправитель - Обменник(no limit) - Очередь(limit:100) - Получатели.

KEFIR4UK
Сообщения: 97
Зарегистрирован: 2014.12.13, 16:24

Re: RabitMQ - получить пачку сообщений за один раз

Сообщение KEFIR4UK » 2019.04.22, 12:54

Во воложении скрин где видно что в админке реббит есть такое

chesar
Сообщения: 507
Зарегистрирован: 2013.04.10, 17:49

Re: RabitMQ - получить пачку сообщений за один раз

Сообщение chesar » 2019.04.22, 14:01

KEFIR4UK писал(а):
2019.04.22, 12:54
Во воложении скрин где видно что в админке реббит есть такое
https://github.com/rabbitmq/rabbitmq-ma ... et.erl#L88
Я в эрланге не силён, но мне кажется тут как раз рекурсивно уменьшается счётчик прочитанных сообщений. Т.е. консьюмер сам за этим следит.

Ответить