EMQX MQTT服务器 Windows部署
由于我正在着手的物联网项目需要进行通信,我在各种通信协议中进行比较。蓝牙等通信协议功耗太高,而且距离受限;ZigBee虽然说是低功耗,且距离远,可是它用于智能家居的组网还行,还需要使用网关进行数据上传。
MQTT协议
我所需要的是一种能够不受位置限制的通信协议,MQTT就是基于TCP/IP的通信协议,它属于物联网的主流消息协议。
从个人家庭的智能家居,到工业企业数字化改造、城市的智慧化治理,甚至空间站设施的远程遥测,都在采用 MQTT 消息架构。高可靠高性能的 MQTT 消息中间件已成为开发物联网应用和搭建物联网平台必备的基础设施软件。
EMQX 平台
目前关于MQTT服务器软件有很多,比如mosquitto、ActiveMQ、Apollo服务器等。我在此使用EMQX部署MQTT服务器是因为EMQ X Broker 是基于高并发的 Erlang/OTP 语言平台开发,支持百万级连接和分布式集群架构,发布订阅模式的开源 MQTT 消息服务器。最关键的是无论是产品原型设计、物联网创业公司、还是大规模的商业部署,EMQ X Broker 都支持开源免费使用。
EMQ X Broker下载链接
EMQX MQTT部署
由于在Windows上部署MQTT服务器,下载的EMQ X Broker为压缩包,将其解压即可。
需要启动MQTT服务器时,在cmd窗口先更改路径到解压的位置的\emqx\bin处
cd E:\exe_package\EMQ\emqx-windows-v4.0-beta.1\emqx\bin
启动 MQTT服务器 输入emqx start命令
打开浏览器 输入http://localhost:18083/进入管理界面(EMQ提供了web的控制后台,默认是18083端口)。默认用户名 admin,默认密码public。可以看到EMQ的Dashboard界面(不习惯英文界面可以在Settings里面更改设置)。
控制台主要是可以看到客户端的一些连接状态,如连接数、客户端ID、订阅的消息、订阅的消息数、发布的消息及发布的消息数等等,还可以控制插件的运行。
如果想要更改web登录密码或添加用户(注意这里添加的是web管理用户),可以在Users设置里面添加。
在管理界面,EMQX还提供了MQTT客户端功能,可以新建测试客户端。
关闭MQTT服务器 在命令窗口输入emqx stop命令
说明
EMQ默认设置了一些端口,如18083就是Dashboard,还有些就是:1883(MQTT 协议端口),这个是mqtt客户端连接服务器时使用的端口;8080(HTTP API 端口),这个也比较重要,在修改API时用到;8883(MQTT/SSL 端口);8083(MQTT/WebSocket 端口)。