Що станеться, коли в MQTT немає жодного абонента на тему?


12

Ситуація така:

Є клієнт, видавець, він не підписаний на жодну тему. Цей клієнт має власну окрему тему і регулярно публікує дані. Але немає інших клієнтів , які підписалися на цю тему.

Тож цей бідний і самотній клієнт може вважатися ненормальним ( Глава 5.4.8 ).

Реалізації сервера можуть відстежувати поведінку клієнта для виявлення потенційних інцидентів із безпекою. Наприклад:

  • [...]

  • Надсилання недоставних повідомлень (немає підписників на теми)

Він не має уявлення про те, скільки клієнтів підписалися на його тему. Тож не відомо, що його можна вважати клієнтом із ненормальною поведінкою.

То що, що відбувається з таким клієнтом, буде залежати від реалізації сервера? Які практики, її слід просто відключити, але чи не буде вона потім намагатися знову підключитися?

Відповіді:


9

Як ви кажете, це залежить від реалізації сервера, особливо QoS переданого повідомлення, якщо воно є "принаймні один раз".

IMHO MQTT - це система мовлення, а не кінцевий протокол між двома машинами, тому нам абсолютно не потрібен абонент щоразу, коли ми створюємо тему.

Я можу розмістити що завгодно (температуру, ...) і через два місяці реалізувати щось, що прочитає, або навіть видалити і придумати щось інше, поки мій датчик ще публікує дані.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.