2015-06-20 3 views
10

Интересно, сохранено ли отправленное сообщение. То есть, когда издатель отправляет последовательность сообщений, каждый абонент гарантирует получение той же последовательности, что и издатель? Для чистых и постоянных сеансов?Сохраняется ли порядок сообщений в сообщениях MQTT?

ответ

19

Сводка возможностей заказа сообщений в MQTT 3.1.1 может быть найдена в самой спецификации here.

В итоге:

  • никаких гарантий сделаны по поводу относительного упорядочения сообщений, опубликованных с различными значениями QoS. (например, QoS 0 может превышать QoS 2, например, поскольку он включает в себя один пакет, а не 4 пакета последнего).
  • QoS-сообщения будут доставляться в порядке (хотя сообщения могут теряться)
  • QoS-сообщения будут доставляться в порядке
  • QoS 1 позволяет дубликаты сообщений - можно дубликат прибудет после в первый экземпляр следующего сообщения, которое было опубликовано.

Заказ QoS 1 может быть гарантирован, если клиент/брокер разрешает только один поток сообщений в любое время.