@sheich

Как задать консьюмеру IBMMQ количество вычитываемых сообщений?

Собственно, сабж: как настроить консьюмер IBMMQ так, чтобы он забирал из очереди не все сообщения - без ограничений - которые ему хочет выдать сервер (менеджер), а как-то дозированно: по 1, 2, N и только после обработки уже вычитанных вычитывал следующие?
Я знаю, как это устроено в RabbitMQ - там можно задавать режим ACK - автоматически подтверждать принятое сообщение (по приему) или вручную (по номеру/индексу), ну и кол-во сообещний, которое может одновременно обрабатывать 1 консьюмер.
Как-то так:
_consumer.Model.BasicQos(0, (ushort) _settings.MessageCount, true);
_consumer.Model.BasicConsume(_queueName, _settings.AutoConfirm, consumer: _consumer, consumerTag: this.Instance.Id);
- prefetchCount - кол-во сообщений (_settings.MessageCount)
- autoAck - автоподтвержение _settings.AutoConfirm
Как эти же параметры задать при работе с IBMMQ?
Клиент на .net 6.0, библиотеки IBM.XMS (amqmxmsstd.dll)
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ответы на вопрос 1
как настроить консьюмер IBMMQ так, чтобы он забирал из очереди не все сообщения - без ограничений - которые ему хочет выдать сервер (менеджер), а как-то дозированно: по 1, 2, N и только после обработки уже вычитанных вычитывал следующие?

Зачем?
Используй СУБД, считывая записи с LIMIT, OFFSET
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы