几款流行MQTT Broker性能对比

前言

最近百度新开源了一款MQTT Broker,带着期待,于是我们准备了了一次性能的基准测试,主要为了测评各MQTT Broker之间的性能差异。

产品 说明 运行环境
BifroMQ 百度开源的一款MQTT产品 JDK17,Maven 3.5+
EMQX 开源&商业化MQTT的鼻祖 Earlng
FluxMQ 号称性能领先99%的一款商业化MQTT产品 JDK8、JDK11、JDK17
TBMQ(暂不压测) Thingsboard开源的一款MQTT产品 JDK17,Maven 3.5+

功能对比

功能 BifroMQ EMQX FluxMQ TBMQ
发布订阅 ✔️ ✔️ ✔️ ✔️
共享订阅 ✔️ ✔️ ✔️ ✔️
数据持久化(运行) ✔️ ✔️ ✔️ ✔️
Session消息 ✔️ ✔️ ✔️ ✖️
保留消息 ✔️ ✔️ ✔️ ✔️
动态认证 ✖️ ✔️ ✔️ ✖️
数据桥接 ✖️ ✔️ ✔️ ✖️
多协议 ✖️ ✔️ ✔️ ✖️
延迟消息 ✖️ ✔️ ✔️ ✖️
ACL控制 ✖️ ✔️ ✔️ ✖️

压测准备

压测工具使用emqtt-bench压测工具
https://github.com/emqx/emqtt-bench

压测指标:
类型_连接数_订阅数_QOS_频率(每秒)_数据包大小_数据包总数

多Topic

发布脚本:

./emqtt_bench pub -t %i  -h 172.17.6.75   -p 1887 -u smqtt -P smqtt -s 1024 -q 0 -c 5000 -I 1000

你可能感兴趣的:(物联网,iot,mqtt)