In MQTT, Nachrichten mit QoS 1 oder 2 müssen mindestens einmal geliefert werden (QoS 2 Nachrichten müssen geliefert werden genau einmal). Wenn der Client nicht verbunden ist, muss der Broker die Nachricht speichern, bis der Client bereit ist, sie zu empfangen.
Der HiveMQ-Blog hat einen interessanten Punkt:
Aber was passiert, wenn ein Kunde längere Zeit nicht online geht? Die Einschränkung zum Speichern von Nachrichten ist häufig die Speichergrenze des Betriebssystems. In diesem Szenario gibt es keine Standardmethode. Es kommt ganz auf den Anwendungsfall an. In HiveMQ bieten wir die Möglichkeit, Nachrichten in der Warteschlange zu bearbeiten und zu löschen.
Wie geht Mosquitto mit dieser Situation um, da dies vom Makler abhängig zu sein scheint ? Stürzt es nur ab, wenn der Speicher knapp wird, oder werden alte Nachrichten endgültig gelöscht?