Sunday 8 October 2017

MQTT Architecture question

I'm coming from a Python background and am working on a new project and want to try and use NodeJS exclusively but I'm not sure if it's the right choice. Here's what the architecture looks like:Multiple Hardware Devices (Arduino)These publish out to a MQTT broker. In theory, I could have hundreds of these.Application Server (???)Normally this would be a Python server that listens for changes to the channel and then saves them to MongoDB and performs additional actions if the values are over a certain threshold (temperature is over 100 degrees, for instance)Client Web Server (NodeJS)This is \a website where a client can come in and look at current/past values and make updates to their application. It's really nothing more than NodeJS server reading/writing to the MongoDB.My question is this: Assuming that my hardware devices can't do REST API calls, but only make MQTT posts, does my application sever have to be Python or something similar to monitor the channels? Is there such a thing as a NodeJS MQTT subscriber that can monitor and handle hundreds (maybe thousands) of MQTT updates coming into a channel and save that data to mongo?I'm not looking for specific code, just some general guidelines based on other peoples experience about having Node work in this kind of capacity.Thanks!

Submitted October 08, 2017 at 10:17PM by 6ThePrisoner

No comments:

Post a Comment