Получите только N сообщений от RabbitMQ с реакцией \stomp, проверьте их отдельно и выйдите
Я использую RabbitMQ с PHP реагировать \stomp. У меня есть две очереди - одна "todo" другая "done". Потребитель читает из "todo", выполняет свою работу, подтверждает сообщение, а затем публикует его в очереди "done".
Есть ли способ убедиться, что я потребляю только N сообщений от "todo" (и подтверждаю их индивидуально), а затем прекращаю работу? Основная причина этого в том, что мы не хотим иметь долго работающих потребителей и хотим перезапустить их после N сообщений.
1 ответ
Вы можете установить количество предварительных выборок для пункта назначения:
Счетчик предварительной выборки для всех подписок по умолчанию не ограничен. Это можно контролировать, установив заголовок prefetch-count в кадрах SUBSCRIBE на желаемый счетчик целых чисел.
https://www.rabbitmq.com/stomp.html
Чтобы потреблять только десять сообщений, добавьте заголовок
prefetch-count:10
к SUBSCRIBE
Рамка.
Вы можете установить режим подтверждения client-individual
для подтверждения сообщения вручную.