Блоги HiveMQ перелічуються в розділі "Кращі практики", щоб не підписуватися на багаторівневу підстановку при спробі скинути всі повідомлення в базу даних. Вони стверджують, що клієнт, який підписався, може не встигати за великим завантаженням повідомлень, і пропонують використовувати плагін брокера, щоб безпосередньо підключитись до потоку повідомлень.
Іноді доводиться передплачувати всі повідомлення, які передаються через брокера, наприклад, при збереженні всіх їх у базі даних. Цього не слід робити, використовуючи клієнт MQTT та підписавшись на багаторівневу підстановку. Причина полягає в тому, що часто клієнт, який підписався, не в змозі обробити навантаження повідомлень, що надходять на його шляху. Особливо, якщо у вас є велика пропускна здатність. Наше рекомендоване рішення полягає у впровадженні розширення у брокері MQTT, наприклад, плагінова система HiveMQ дозволяє підключитися до поведінки HiveMQ та додати асинхронну процедуру для обробки кожного вхідного повідомлення та збереження його до бази даних.
Чи є і те
- аналогічна система (розширення / плагін) для брокера комарів,
- інший рекомендований метод, який працює з комаром, або
- обґрунтовані докази того, що такий підхід взагалі непотрібний, тобто клієнт, який підписався,
#
може зробити просто чудово?
/programming//q/31584613/3984613 не вирішує це питання вичерпно.