辛集市住房和城乡建设厅网站微信开发者社区

当前位置: 首页 > news >正文

辛集市住房和城乡建设厅网站,微信开发者社区,wordpress可以建网站吗,南充市房地产网官方网站文章钢要#xff1a; 1、进行双服务器搭建 2、进行多服务器搭建 一、Mosquitto的分布式集群部署 如果需要做并发量很大的时候就需要考虑做集群处理#xff0c;但是我在查找资料的时候发现并不多#xff0c;所以整理了一下#xff0c;搭建简单的Mosquitto集群模式。 首…文章钢要 1、进行双服务器搭建 2、进行多服务器搭建 一、Mosquitto的分布式集群部署 如果需要做并发量很大的时候就需要考虑做集群处理但是我在查找资料的时候发现并不多所以整理了一下搭建简单的Mosquitto集群模式。 首先集群需要2台以上的Mosquitto服务器。安装方式同上。 先了解下Mosquitto集群模式的逻辑图如下 可以看出无论在那台服务器中订阅了信息无论在那台服务器上发布信息订阅者都可以收到发布的信息。那么下一步我们着手搭建集群服务器为了方便只演示2台服务器之间的集群搭建。 集群部署有一个专有名词叫做“桥接”实现桥接的方式需要修改config.mk与mosquitto.conf文件。值得说明的是如果有10台服务器做Mosquitto集群每台服务器上将桥连接打开然后只需要更改一台服务器上的Mosquitto.conf文件即可其他服务器的Mosquitto.conf文件不需要做任何改动。大大方便了集群的维护。如果有新的服务器加入或删除只需要修改主服务器的Mosquitto.conf即可。 1、开启服务器桥连接 进入安装目录 cd mosquitto-1.4.9/ 打开config.mk文件 vi config.mk 找到WITH_BRIDGE:yes 将签名的“#”号去掉开启桥连接模式。默认是开启的为了无误查看一下 2、配置Mosquitto.conf的桥连接属性 进入etc目录并且打开Mosquitto.conf文件 cd /etc/mosquitto/ vi mosquitto.conf 找到Bridges节点在下面加入如下代码

connection mytest address 10.19.22.53:1883 topic room1/# both 2 sensor/ myhouse/ bridge_protocol_version mqttv311 notifications true cleansession true try_private true start_type automatic

connection 连接名称可以随便取 address 连接的另外服务器地址和端口号如果有多台服务器可以写多个address topic 主题名称“#”为通配符表示发布端可以在room1/后面接任何文字 both 服务质量2代表只有一次可以查看第一篇博文对MQTT的详细介绍 sensor/  本地前缀标识可以随便命名 myhouse/ 远程前缀标识可以随便命名 bridge_protocol_version mqttv311 桥连接协议版本MQTT3.11 notifications  是否发布桥接的状态信息 cleansession  桥接断开时是否清除远程服务器中的消息 start_type 桥接模式目前有三种automatic、lazy、once 设置好之后保存退出。 3、开启服务器 第一步先确保从服务器先开启第二步重新启动主服务器的Mosquitto服务。如果配置无误主服务器在开启的时候会自动连接所有从服务器显示如下: Mytest实在Mosquitto.conf配置中设定的我的连接名称后面是从服务器的地址与端口号 如上图所示主服务器与从服务器已经桥接完成。 4、验证发布/订阅 集群的特点在任何服务器上都可以订阅与发布并且订阅者可以收到在任何服务器中发送去信息。 测试场景在从服务器中订阅一条信息在主服务器中发布一条信息从服务器的订阅者可以收到从主服务器中发布的消息。 (1)在从服务器中键入一下命令 mosquitto_sub -t myhouse/room1/# 注意myhouse/ 是编写Mosquitto.conf中topic的远程前缀。 room1/#是topic中的订阅主题 (2)在主服务器中键入一下命令 mosquitto_pub -t sensor/room1/temperature -m 26.3 注意sensor/ 是编写Mosquitto.conf中topic的本地前缀。 room1/ 是topic中的订阅主题 temperature  相当与“#”通配符  如果Mosquitto.conf配置无误并且本地前缀与远程前缀拼写正确那么会显示如下图信息表示集群配置成功 在从服务器订阅在主服务器发送从服务器订阅者收到信息 以上双集群配置完成。也比较简单。 下面对多集群配置进行阐述。 二、多集群部署 配置3台服务集群与3n台理论一样所以这里配置3台服务集群作为演示。 1、安装服务器 首先在上述2台服务器基础上再增加一台服务器配置步骤请参考第二篇博文。 2、配置服务器 假设有3台服务器分别是 192.168.0.53 192.168.0.88 192.168.0.89 其中53为主服务器88与89为从服务器。 所以在88与89上只需要正常安装Mosquitto服务即可其他不需要做任何配置。 重点还是在53的mosquitto.conf中配置。 依然打开mosquitto.conf找到Bridge节点重新复习一下节点中每个配置项的含义 #connection name #address host[:port] [host[:port]] #topic topic [[[out | in | both] qos-level] local-prefix remote-prefix] 笔者一开始错误的认为红色字体部分是配置第二台服务器使用的但是笔者错了。每一个connection只能有一个IP地址address红色的部分是留有多个ip的保存。貌似是对前地址的一个备份如果前地址服务器挂了可以立马接手备用服务器笔者尚未证实 如果想增加一台服务器只需要重新添加connection、address、topic节点即可。因此Bridge节点变成下面形式 connection mytest address 192.168.0.88:1883 topic room1/# both 2 sensor/ myhouse/connection mytest2 address 192.168.0.89:1883 topic room1/# both 2 sensor/ myhouse/bridge_protocol_version mqttv311 notifications true cleansession true try_private true start_type automatic 红色部分为新增加的服务器。重启Mosquitto服务器即可。 3、测试订阅、发布 测试理论与第一节类似 分别在88与89服务器中输入mosquitto_sub -t myhouse/room1/#  订阅信息 在53服务器中输入mosquitto_pub -t sensor/room1/temperature -m 26.3 发布消息 同事88与89都会收到“26.3”这条信息。如果只有一台服务器收到说明配置有问题。 以上配置完成了对Mosquitto服务器的基础配置 下一步对服务器的用户登录与权限进行配置。 可以看出无论在那台服务器中订阅了信息无论在那台服务器上发布信息订阅者都可以收到发布的信息。那么下一步我们着手搭建集群服务器为了方便只演示2台服务器之间的集群搭建。 集群部署有一个专有名词叫做“桥接”实现桥接的方式需要修改config.mk与mosquitto.conf文件。值得说明的是如果有10台服务器做Mosquitto集群每台服务器上将桥连接打开然后只需要更改一台服务器上的Mosquitto.conf文件即可其他服务器的Mosquitto.conf文件不需要做任何改动。大大方便了集群的维护。如果有新的服务器加入或删除只需要修改主服务器的Mosquitto.conf即可。 1、开启服务器桥连接 进入安装目录 cd mosquitto-1.4.9/ 打开config.mk文件 vi config.mk 找到WITH_BRIDGE:yes 将签名的“#”号去掉开启桥连接模式。默认是开启的为了无误查看一下 2、配置Mosquitto.conf的桥连接属性 进入etc目录并且打开Mosquitto.conf文件 cd /etc/mosquitto/ vi mosquitto.conf 找到Bridges节点在下面加入如下代码

connection mytest address 10.19.22.53:1883 topic room1/# both 2 sensor/ myhouse/ bridge_protocol_version mqttv311 notifications true cleansession true try_private true start_type automatic

connection 连接名称可以随便取 address 连接的另外服务器地址和端口号如果有多台服务器可以写多个address topic 主题名称“#”为通配符表示发布端可以在room1/后面接任何文字 both 服务质量2代表只有一次可以查看第一篇博文对MQTT的详细介绍 sensor/  本地前缀标识可以随便命名 myhouse/ 远程前缀标识可以随便命名 bridge_protocol_version mqttv311 桥连接协议版本MQTT3.11 notifications  是否发布桥接的状态信息 cleansession  桥接断开时是否清除远程服务器中的消息 start_type 桥接模式目前有三种automatic、lazy、once 设置好之后保存退出。 3、开启服务器 第一步先确保从服务器先开启第二步重新启动主服务器的Mosquitto服务。如果配置无误主服务器在开启的时候会自动连接所有从服务器显示如下: Mytest实在Mosquitto.conf配置中设定的我的连接名称后面是从服务器的地址与端口号 如上图所示主服务器与从服务器已经桥接完成。 4、验证发布/订阅 集群的特点在任何服务器上都可以订阅与发布并且订阅者可以收到在任何服务器中发送去信息。 测试场景在从服务器中订阅一条信息在主服务器中发布一条信息从服务器的订阅者可以收到从主服务器中发布的消息。 (1)在从服务器中键入一下命令 mosquitto_sub -t myhouse/room1/# 注意myhouse/ 是编写Mosquitto.conf中topic的远程前缀。 room1/#是topic中的订阅主题 (2)在主服务器中键入一下命令 mosquitto_pub -t sensor/room1/temperature -m 26.3 注意sensor/ 是编写Mosquitto.conf中topic的本地前缀。 room1/ 是topic中的订阅主题 temperature  相当与“#”通配符  如果Mosquitto.conf配置无误并且本地前缀与远程前缀拼写正确那么会显示如下图信息表示集群配置成功 在从服务器订阅在主服务器发送从服务器订阅者收到信息 以上双集群配置完成。也比较简单。 下面对多集群配置进行阐述。 二、多集群部署 配置3台服务集群与3n台理论一样所以这里配置3台服务集群作为演示。 1、安装服务器 首先在上述2台服务器基础上再增加一台服务器配置步骤请参考第二篇博文。 2、配置服务器 假设有3台服务器分别是 192.168.0.53 192.168.0.88 192.168.0.89 其中53为主服务器88与89为从服务器。 所以在88与89上只需要正常安装Mosquitto服务即可其他不需要做任何配置。 重点还是在53的mosquitto.conf中配置。 依然打开mosquitto.conf找到Bridge节点重新复习一下节点中每个配置项的含义 #connection name #address host[:port] [host[:port]] #topic topic [[[out | in | both] qos-level] local-prefix remote-prefix] 笔者一开始错误的认为红色字体部分是配置第二台服务器使用的但是笔者错了。每一个connection只能有一个IP地址address红色的部分是留有多个ip的保存。貌似是对前地址的一个备份如果前地址服务器挂了可以立马接手备用服务器笔者尚未证实 如果想增加一台服务器只需要重新添加connection、address、topic节点即可。因此Bridge节点变成下面形式 connection mytest address 192.168.0.88:1883 topic room1/# both 2 sensor/ myhouse/connection mytest2 address 192.168.0.89:1883 topic room1/# both 2 sensor/ myhouse/bridge_protocol_version mqttv311 notifications true cleansession true try_private true start_type automatic 红色部分为新增加的服务器。重启Mosquitto服务器即可。 3、测试订阅、发布 测试理论与第一节类似 分别在88与89服务器中输入mosquitto_sub -t myhouse/room1/#  订阅信息 在53服务器中输入mosquitto_pub -t sensor/room1/temperature -m 26.3 发布消息 同事88与89都会收到“26.3”这条信息。如果只有一台服务器收到说明配置有问题。 以上配置完成了对Mosquitto服务器的基础配置 下一步对服务器的用户登录与权限进行配置。