MQTT代理+ mongoDB

时间:2014-06-06 12:28:40

标签: mongodb mqtt

如何将MQTT代理与mongoDB集成?

我将gps坐标从客户端发布到代理,并希望将其存储在带有mongoDB的MQTT代理中,

如果为同一个

分享一些指针,我们将不胜感激

4 个答案:

答案 0 :(得分:4)

我四处寻找,并没有为自己找到合适的解决方案,所以我创建了一个:https://github.com/izmailoff/mqtt-mongo

有关所有详细信息,请参阅README。从本质上讲,它是一个连接到MQTT代理和MongoDB的独立服务,并订阅您感兴趣的主题。您可以为配置中的每个主题选择一个集合。

设计目标是提供弹性,轻量级和快速服务,您还可以使用Java / Scala中的代码或支持此类集成的任何JVM语言进行自定义。

答案 1 :(得分:3)

最简单的方法可能是使用Node-Red(http://nodered.org

如果MQTT有效负载是已经采用正确格式的json对象,则链接到mongodb节点的一个MQTT输入节点将执行此操作。

如果您需要在插入之前更改有效负载,则可以包含一个功能节点来重新映射它。

答案 2 :(得分:3)

如果您希望代理直接将消息存储到数据库,可以使用HiveMQ并编写MongoDB插件。这个概念在this blog post中描述。

另一个想法是使用通配符订阅者获取所有消息并将其存储到MongoDB。这不是一个直接的整合,但如果你不想扩展,那就行不了。

答案 3 :(得分:0)

这是一个老问题,但我需要做类似的事情。我有一个订阅者订阅了我有兴趣保存到mongo的主题。它只是将消息保存在数据库中。我还没有看过缩放问题。但在我的情况下,我可以根据主题对这些消息进行分区。