1. mosquitto 集群部署图
前文写道mosquitto 单机阿里云只能支持50000设备同时在线,数量较多时采用mosquitto 集群部署,部署图如下
集群由两台服务器组成,main 标识主服务器,sub 标识从服务器, 橙色的sub 标识订阅客户度,绿色的pub 标识发布客户端
2. 开启mosquitto 桥接
2.1 mosquitto config.mk 开启桥接
config.mk 文件 with_bridge:=yes, 然后编译
2.2 mosquitto 配置文件
connection 连接名称,可以随便取
address 连接的另外服务器地址和端口号,如果有多台服务器,可以写多个address
topic 主题名称,“#”为通配符,表示发布端可以在test/后面接任何文字
both 服务质量,2代表只有一次
main/本地前缀标识,可以任意取名
sub1/远程前缀标识,可以任意取名
bridge_protocol_version mqttv311 桥连接协议版本MQTT3.11
notifications 是否发布桥接的状态信息
cleansession 桥接断开时,是否清除远程服务器中的消息
start_type 桥接模式,目前有三种:automatic、lazy、onceainai
3. 集群验证
开启从服务器
开启主服务器
从log 可以看出主服务器已经连接上从服务器
可以看到订阅端已经收到消息