• 使用EMQ搭建MQTT服务器


    前言
    寒假的时候开始搭建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,
    可以在Web管理页面方便的配置自己需要的插件,如用户认证..


    TCP 服务端口占用
    EMQ 2.0 消息服务器默认占用的 TCP 端口包括:

    1883 MQTT 协议端口
    8883 MQTT/SSL 端口
    8083 MQTT/WebSocket 端口
    8080 HTTP API 端口
    18083 Dashboard 管理控制台端口
    EMQ 2.0 占用的上述端口,可通过 etc/emq.conf 配置文件的 ‘listener’ 段落设置:

    ## TCP Listener: 1883, 127.0.0.1:1883, ::1:1883
    listener.tcp.external = 0.0.0.0:1883

    ## SSL Listener: 8883, 127.0.0.1:8883, ::1:8883
    listener.ssl.external = 8883

    ## External MQTT/WebSocket Listener
    listener.ws.external = 8083

    ## HTTP Management API Listener
    listener.api.mgmt = 127.0.0.1:8080

  • 相关阅读:
    java这个404你能解决吗?
    java发邮件,这个坑你能填吗?
    自动评论csdn博客文章实现
    一款效率神器Ditto
    java加载国际化文件的几种姿势
    这个问题你能答对吗?
    mysql大小写敏感与校对规则
    java、golang日志文件转储压缩实现
    一款很好用的markdown编辑器
    beego与curl三件事
  • 原文地址:https://www.cnblogs.com/jjg0519/p/10491601.html
Copyright © 2020-2023  润新知