Ручное подтверждение в EasyNetQ, возможно ли это?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ручное подтверждение в EasyNetQ, возможно ли это?

Сообщение Anonymous »

Я надеюсь использовать EasyNetQ для потребительской задачи, где я буду читать пакет сообщений (скажем, 100) из одной или нескольких очередей RabbitMQ и обрабатывать пакеты в восходящем направлении. Я не хочу подтверждать сообщения до тех пор, пока не завершится восходящий процесс, потому что, если мой процесс выйдет из строя во время восходящего процесса, я бы хотел, чтобы сообщения не удалялись.
Мой тестовый код на данный момент выглядит так (псевдокод — опущены детали синхронизации и т. д.):

Код: Выделить всё

var bus = RabbitHutch.CreateBus("host=localhost");
var consumer = bus.Advanced.Consume(queue, (body, properties, info) =>
{
MessageHandler(body, properties, info);
});

// ...

static void MessageHandler(ReadOnlyMemory content, MessageProperties props, MessageReceivedInfo info)
{
messageBatch.Add((content, info));

if (messageBatch.Count >= 100)
// trigger another thread to do batch processing
}
Поведение EasyNetQ по умолчанию заключается в том, что функция bus.Advanced.Consume выполняет подтверждение, как только функция-обработчик возвращает значение. Можно ли это отключить, и если да, то какую функцию я могу вызвать, чтобы отправить подтверждения позже?

NB. Пакетное использование сообщений RabbitMQ и подтверждение их всех одновременно решает этот вопрос для RabbitMQ.Client, но я хотел бы знать, возможно ли это в клиенте EasyNetQ.

Подробнее здесь: https://stackoverflow.com/questions/793 ... t-possible
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Ручное подтверждение в EasyNetQ, возможно ли это?
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Ручное подтверждение в EasyNetQ, возможно ли это?
    Anonymous » » в форуме C#
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Ручное подтверждение в EasyNetQ, возможно ли это?
    Anonymous » » в форуме C#
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Ручное подтверждение в EasyNetQ, возможно ли это?
    Anonymous » » в форуме C#
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Ручное подтверждение в EasyNetQ, возможно ли это?
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»