Gemäß den Spezifikationen sollte immer der Client die Verbindung zu einem Server herstellen.
Klient:
Ein Programm oder Gerät, das MQTT verwendet. Ein Client stellt immer die Netzwerkverbindung zum Server her . Es kann
Veröffentlichen Sie Anwendungsnachrichten, an denen andere Clients interessiert sein könnten.
Abonnieren Sie, um Anwendungsnachrichten anzufordern, die Sie erhalten möchten.
Abbestellen, um eine Anforderung für Anwendungsnachrichten zu entfernen.
Trennen Sie die Verbindung zum Server.
Wenn dieser Client eine Anwendungsnachricht abonniert, sollte der Server diese Nachrichten an diesen bestimmten Client weiterleiten.
Server:
Ein Programm oder Gerät, das als Vermittler zwischen Clients, die Anwendungsnachrichten veröffentlichen, und Clients, die Abonnements abgeschlossen haben, fungiert. Ein Server
Akzeptiert Netzwerkverbindungen von Clients.
Akzeptiert von Clients veröffentlichte Anwendungsnachrichten.
Verarbeitet Abonnement- und Abbestellungsanforderungen von Clients.
Leitet Anwendungsnachrichten weiter, die mit Client-Abonnements übereinstimmen .
Bedeutet dies, dass ein Client, der ein Abonnement abschließt, mit dem Server verbunden bleibt, solange das Abonnement gültig ist, obwohl die meiste Zeit kein Datenfluss stattfindet?
Ich komme zu diesem Schluss, weil, wenn der Client nach dem Abonnement die Verbindung trennt, ein Server keine Nachrichten an ihn weiterleiten kann, weil es der Client ist, der die Verbindung herstellen soll. Aber es wird nicht wissen, wann es wieder hergestellt werden soll.