当前位置: 首页 > 工具软件 > MqttWk > 使用案例 >

各类MQTT代理服务器特性对比

狄钧
2023-12-01

前言

在前面介绍了mosquitto之后,我们来看一下常见的各类MQTT代理服务器的特性对比。
参考链接:原英文链接

本页试图记录各种MQTT服务器(代理)支持的特性。这是针对它们对MQTT的支持;其中很多服务器具有比MQTT更广泛的功能。

功能

备注
QoS 0:服务质量 0,最多传输一次。
QoS 1:服务质量1,至少传输一次。
QoS 2:服务质量2,仅仅传输一次。
auth:验证,身份验证授权。
bridge:桥接,服务器代理之间连接
$SYS:主题过滤器通配符,订阅后能够接收到所有以此通配符开头的主题的消息。
dynamic topics:动态主题
cluster:集群

ServerQoS 0QoS 1QoS 2authBridge$SYSSSLDynamic topicsclusterwebsocketsplugin systemMqtt 5 supportActive development
AedesUsername/Passwordrm
AWS IoT ServicesClient certificates?§
Apache ActiveMQ ArtemisJAAS
BevywiseIoTPlatformKey basedrm
ClearBladeOAuth based User/Pass & Per-channel authorization??
ejabberd
emitterPer-channel authorization
EMQ XUsername/Password, JWT, LDAP, ClientID, …
flespi
GnatMQ / M2MQTTUsername/Password
HBMQTTUsername/Password, Client certificates
HiveMQUsername/Password
IBM IoT MessageSightUsername/Password
IBM Watson IoT Platform
IBM WebSphere MQ MiddlewareUsername/Password, client certificate
JmqttUsername/Password, Client certificates
JoramMQ
Mongoose
moquette?rm
mosca
mosquitto§
MQTT.js§
MQTTnet§§§§§§rm
MqttWk?
RabbitMQSASL
Software AG Universal Messaging§§rm
SolaceBasic, client certificate, Kerberos§
SwiftMQ
TraferoTstack
VerneMQUsername/Password

说明:
✔的意思是:支持
✘的意思是:不支持
?的意思是:未知
§表示支持但有限制
rm表示(roadmap)路线图规划中也就是计划支持。

限制

MQTT.js 接受提供用户名和密码的连接,但实际上并不对连接进行身份验证。
IBM MessageSight 支持一个高可用性模式能够提供集群的冗余优势,但是不支持针对MQTT的负载均衡。
2lemetry 使用域,其中第一个主题段作为域的名称。 $SYS主题空间位于域中 。
Solace 没有提供一个代理之间专有的桥接方案.
mosquitto 的集群是在后端级别实现的(比如redis, amqp等)。
Software AG Universal Messaging提供主动/主动集群(通过专有协议)和桥接(通过专有协议)。

有了各类服务器代理的功能对比,就可以根据需要选择适合自己的服务器代理了。

 类似资料: