MQTT Eenvoudig openbaar / abonneermodel in MQTT


Voorbeeld

De belangrijkste kenmerken zijn:

  • Gebruik van het publiceer / abonneer berichtpatroon dat een-op-veel berichtdistributie en ontkoppeling van applicaties biedt.

  • Een berichtentransport dat agnostisch is voor de inhoud van de lading. Drie servicekwaliteiten voor het bezorgen van berichten

  • Een kleine transportoverhead en protocoluitwisselingen geminimaliseerd om netwerktra te verminderen

voer hier de afbeeldingsbeschrijving in

Over het algemeen zijn er twee soorten berichtenservice.

  • Wachtrij (één op één verbinding)

  • Onderwerp (één op één / één op veel)

MQTT ondersteunt geen wachtrij die betrouwbaar is, maar MQTT ondersteunt onderwerp, standaard is Onderwerp onbetrouwbaar, maar we kunnen MQTT-functies en -methoden gebruiken om het betrouwbaar te maken.

Verschil tussen onderwerp en wachtrij

Wachtrij:

  • Point-to-point-model
  • Slechts één consument krijgt de boodschap
  • Berichten moeten worden afgeleverd in de verzonden volgorde
  • Een wachtrij garandeert slechts dat elk bericht slechts eenmaal wordt verwerkt.
  • De wachtrij weet wie de consument of de JMS-client is. De bestemming is bekend.
  • De JMS-client (de consument) hoeft niet altijd actief of verbonden te zijn met de wachtrij om het bericht te ontvangen of te lezen.
  • Elk succesvol verwerkt bericht wordt door de consument bevestigd.

Onderwerp:

  • Model publiceren / abonneren

  • Meerdere klanten abonneren zich op het bericht

  • Er is geen garantie dat berichten in de verzonden volgorde moeten worden afgeleverd

  • Er is geen garantie dat elk bericht slechts één keer wordt verwerkt. Dit kan worden afgeleid uit het model

  • Het onderwerp, meerdere abonnees hebben en er is een kans dat het onderwerp niet alle abonnees kent. De bestemming is onbekend

  • De abonnee / klant moet actief zijn wanneer de berichten door de producent worden geproduceerd, tenzij het abonnement een duurzaam abonnement was.

  • Nee, elk succesvol verwerkt bericht wordt niet door de consument / abonnee bevestigd.

maar we kunnen de nadelen van het onderwerp verminderen door MQTT te gebruiken. Onderwerp kan betrouwbaar zijn en de duplicaten in MQTT-functies beheren