Я видел это в документации EasynetQ "
EasyNetQ реализует один потребительский поток для экземпляра IBus, поэтому если вы используете стандартный метод не асинхронной подписки, ваш обработчик сообщений будет запускаться синхронно втот же порядок, в котором сообщения доставляются RabbitMQ. Не должно быть необходимости реализовывать блокировку. Если вы используете асинхронную подписку, обработчики по-прежнему будут вызываться по порядку, но, конечно, они могут ACK не в порядке, в зависимости от того, какВы реализуете свой асинхронный обработчик.
Теперь, означает ли это, что я должен избегать использования асинхронных методов (таких как httpClient.SendAsync () или любых асинхронных версий методов) в моем подписчике, если я хочу сохранить порядок сообщений?
Другими словами, у меня есть message1, message2, я хочу обработать message1, а затем message 2. Но если мой подписчик использует методы async / await, тогда message1 и message2 могут быть обработаны не по порядку.