一、MQTT协议介绍
(一)什么是MQTT
MQTT 是基于 Publish/Subscribe(发布/订阅) 模式的物联网通信协议,凭借简单易实现、支持 QoS、报文小等特点
MQTT中文文档EMQ X 消息服务器简介 | EMQ Docs
(二)MQTT角色组成
1、服务端(Broker)
EMQX就是一个MQTT的Broker,此外还要其他的Broker如下:
MQTT Broker 有几个: 1. Eclipse Mosquitto: https://github.com/eclipse/mosquitto 使用 C 语言实现的 MQTT Broker。Eclipse 组织还还包含了大量的 MQTT 客户端项目:https://www.eclipse.org/paho/# 2. EMQX: https://github.com/emqx/emqx 使用 Erlang 语言开发的 MQTT Broker,支持许多其他 IoT 协议比如 CoAP、LwM2M 等 3. Mosca: https://github.com/mcollina/mosca 使用 Node.JS 开发的 MQTT Broker,简单易用。 4. VerneMQ: https://github.com/vernemq/vernemq 同样使用 Erlang 开发的 MQTT Broker
2、客户端(消费者【订阅】、生产者【发布】)
EMQX 通过里面的websocket 可以实现消息的发布与订阅



