实现MQTT代理

时间:2015-06-12 18:27:27

标签: java mqtt

我正在尝试在Google Compute Engine之上实现Java MQTT代理。我的经纪人将用于处理来自物联网设备的大量SUBSCRIBE和PUBLISH消息。所以,我打算使用自动缩放功能来满足我的负载需求。

我不确定我应该使用哪个基于Open Source Java的MQTT代理来启动我的实现。我希望我能得到一些建议。我特意寻找一个支持持久订阅者,保留消息,通配符等功能的开源代理。

此外,由于MQTT是基于TCP构建的,我是否可以从头开始构建自己的代理,使用Java套接字并侦听端口?我假设答案是否定的,但我想澄清一下。

2 个答案:

答案 0 :(得分:6)

这里有一个代理实现列表:

https://github.com/mqtt/mqtt.github.io/wiki/servers

它应该是最新的,但可能不包括绝对的所有实现。一些基于Java的经纪人包括:

  • HiveMQ
  • 绒毛
  • 的ActiveMQ

它们不是全部开源,但有几个

你没有理由不能实现自己的经纪人,协议规范在这里:

http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html

答案 1 :(得分:0)

将Mqtt经纪人视为vert.x模块,如this

对于第二个问题,答案是肯定的,舒尔。

但为什么重新发明轮子?