Получение сообщения RabbitMQ медленнее, чем публикация - PullRequest
0 голосов
/ 03 ноября 2010

Мы работаем с последней версией RabbitMQ 2.1.1 на сервере Windows и используем клиент .Net.Мы выполняем тестирование следующим образом: публикуя 500000 сообщений на временном обмене недолговечными разветвлениями, клиент использует очередь автоматического удаления.Есть только одна очередь.Издатель отправляет ~ 10K сообщений в секунду.После отправки всех сообщений он отключается.Инструмент rabbitmqctl показывает, что размер очереди равен 0, но получатель все еще получает сообщения в течение нескольких секунд, он получил только 60% сообщений.Знаете ли вы, почему существует такая задержка и как ее минимизировать?

Ура!

1 Ответ

1 голос
/ 03 ноября 2010

Если вы используете basic.consume с no_ack = True (отключенные подтверждения), сервер просто отправит все имеющиеся у него сообщения.

Такое поведение наблюдается, когда сервер отправил все сообщения вашему потребителю (поэтому очередь пуста), но они все еще могут буферизоваться в сети где-то или у вашего потребителя.

...