Я создал простой проект прототипа саги с RabbitMQ в качестве транспорта и RavenDB в качестве механизма сохранения. Прототип на самом деле работает, как и ожидалось, но каждые несколько секунд я получаю сообщение об ошибке:
ОШИБКА NServiceBus.Transports.RabbitMQ.RabbitMqDequeueStrategy Не удалось получить сообщения от [Assembly].Retries System.AggregateException: произошла одна или несколько ошибок. --> System.IO.EndOfStreamException: SharedQueue закрыта в RabbitMQ.Util.SharedQueue1.EnsureIsOpen()
at RabbitMQ.Util.SharedQueue
1.Dequeue (время ожидания 32 миллисекунды.......
Я также получаю почти идентичное сообщение сразу после приведенного выше, но в нем говорится, что не удалось получить сообщения от RabbitMGPoller.Timeouts.
В дополнение к этому есть постоянные сообщения INFO, в которых говорится: NServiceBus.Transports.RabbitMQ.RabbitMqConnectionManager Отключен от брокера RabbitMQ, причина: причина закрытия AMQP, инициированная библиотека, код = 0 текст = "Конец потока"... причина = Система .IOException: невозможно записать данные в транспортное соединение: существующее соединение было принудительно закрыто удаленным хостом. ---> System.Net.Sockets.SocketException: существующее соединение было принудительно закрыто удаленным хостом...
Я попытался добавить значение DequeueTimeout=600 в транспортное соединение, но все равно возникают те же ошибки. Я также пытался добавить следующий ключ в файл конфигурации, но это все равно не помогло.