Я использую RabbitMQ для распространения сообщений с сервера на несколько клиентов. У каждого клиента своя очередь. Существует одно сообщение, опубликованное сервером для обмена, и существует несколько привязок, которые вызывают распределение по нескольким очередям.
См. следующую схему. Сообщение публикуется в «Общий обмен», из которого есть привязки к конкретным обменам пользователя (например, «Обмен пользователя 1»), и, наконец, есть последняя привязка от конкретного обмена пользователя к пользовательской очереди (например, «Очередь пользователя 1»).
Теперь моя проблема заключается в том, что я не хочу, чтобы какой-то клиент имел преимущество в получении сообщения раньше, чем другие. (например, у пользователя 1 сообщение всегда будет доступно раньше, чем у пользователя 2)
У меня вопрос: доступно ли сообщение в очередях в детерминированном порядке?
EDIT: я знаю, что различия, скорее всего, очень малы (если вообще есть). Все же мне нужно знать - спрашивают клиенты. Сервер выдает довольно много больших сообщений (тысячи в секунду) в пиковые периоды. Кроме того, из-за надежности у нас есть политика высокой доступности почти для всех очередей, что также может привести к некоторым накладным расходам. Поэтому я думаю, что если есть какие-то различия во время пиков, они в конечном итоге проявятся.
Спасибо
откровенный