1.官网:EMQX 是一款大规模可弹性伸缩的云原生分布式物联网 MQTT 消息服务器。 

2.安装:快速开始 | EMQX 5.0 文档

docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:latest

3.开放相应端口

安装mqtt服务器EMQX_物联网

4.通过浏览器打开 http://localhost:18083/ (opens new window)(将 localhost 替换为您实际 IP 地址)以访问 EMQX Dashboard 管理控制台,进行设备连接与相关指标监控管理。

安装mqtt服务器EMQX_客户端_02

安装mqtt服务器EMQX_服务器_03

设置成中文: 

安装mqtt服务器EMQX_运维_04

5.安装桌面客户端

MQTT X:跨平台 MQTT 5.0 桌面客户端工具MQTT X 是 EMQ 开源的一款优雅的跨平台 MQTT 5.0 桌面客户端工具,它能运行在 macOS, Linux, Windows 上,并且支持 MQTT 消息格式转换。https://mqttx.app/zh

安装mqtt服务器EMQX_运维_05

安装mqtt服务器EMQX_服务器_06

安装mqtt服务器EMQX_客户端_07

 

安装mqtt服务器EMQX_物联网_08

 

安装mqtt服务器EMQX_运维_09

安装mqtt服务器EMQX_物联网_10

 6.python客户端连接MQTT Python 客户端库 | EMQX 5.0 文档https://www.emqx.io/docs/zh/v5.0/development/python.html#paho-python-%E4%BD%BF%E7%94%A8%E7%A4%BA%E4%BE%8B

pip install paho-mqtt
import paho.mqtt.client as mqtt


# 连接成功回调
def on_connect(client, userdata, flags, rc):
    print('连接成功!' + str(rc))
    # 订阅Topic,如果Mqtt服务器上没有该主题,则会自动创建。
    client.subscribe('test1')


# 消息接收回调
def on_message(client, userdata, msg):
    print("主题:", msg.topic)
    print("负载", msg.payload.decode('utf8'))


if __name__ == '__main__':
    client = mqtt.Client()

    # 指定回调函数
    client.on_connect = on_connect
    client.on_message = on_message

    # 建立连接
    client.connect('124.222.40.17', 1883, 60)
    # 发布消息 如果Mqtt服务器上没有该主题,则会自动创建。
    client.publish('test1', payload='Hello everybody', qos=0)

    client.loop_forever()

安装mqtt服务器EMQX_客户端_11

 

安装mqtt服务器EMQX_物联网_12

注意:# 发布消息和订阅主题 如果Mqtt服务器上没有该主题,则会自动创建。