前言
寒假的时候开始搭建mqtt服务器,一开始使用的是RabbitMQ,基于Erlang语言.但是RabbitMQ的本职工作是AMQP,MQTT只是他的一个插件功能,似乎有些大材小用,很多MQTT的功能也没有集成.这次我打算使用EMQ来重新部署我的MQTT服务器.EMQ也是基于 Erlang/OTP 语言平台开发.他是支持大规模连接和分布式集群,发布订阅模式的开源 MQTT 消息服务器。 支持的输入协议不仅仅是MQTT,还包括WebSocket,以及物联网同样著名的与MQTT基于TCP传输协议不同的基于UDP传输协议的CoAP.数据可以输出到基于AMQP协议的Kafka和Rabbitmq等,或者关系数据库PostgreSQL和非关系数据库MongoDB,当然也可以自己写插件将数据输出到时序数据库,如InfluxDB.
程序安装
详细安装教程在这里.我使用的是ubuntu16.04.
先下载deb安装包wget http://emqtt.com/downloads/latest/ubuntu16_04-deb
然后使用命令sudo dpkg -i ubuntu16_04-deb
进行安装.
然后需要执行sudo apt-get install lksctp-tools
来安装所需依赖
安装完成后执行sudo service emqttd start
即可启动服务器
配置与管理
软件默认开启Web管理插件,端口为18083
,可以打开Web管理界面,默认登陆用户为admin
,密码为public