2017-07-05 3 views
1

J'ai une question sur la combinaison d'un MQTT-Broker et d'un serveur Web. S'il vous plaît vérifier l'image ci-dessous.MQTT-Broker répond à WebServer avec base de données

MQTT-Broker <-> WebServer

Est-ce une bonne façon de sauvegarder les données provenant de différents capteurs dans une base de données? Dans l'image, le serveur Web qui communique avec la base de données est un client MQTT. Le WebServer s'abonne aussi à tous les sujets via #.

Est-ce évolutif? Je veux dire s'il y a 100.000 capteurs là-bas et tous envoyer des messages à ce WebServer ..?

Répondre

1

Si vous souhaitez conserver un enregistrement de toutes les données du capteur, il s'agit de la seule option (à moins que vous n'ayez un client différent pour différents types de capteurs, divisez-les un peu). La seule autre option pour un client séparé abonné à # serait d'utiliser un courtier comme HiveMQ qui a un mécanisme de plugin qui peut enregistrer tous les messages dans une base de données.

De même # devrait probablement être sensors/# afin d'ignorer tous les autres messages qui peuvent être sur le système. 100 000 capteurs n'est pas le facteur décisif ici, la vitesse à laquelle ces capteurs délivrent des messages sera le point important car il permettra de déterminer la charge réelle.