MQTT代理环境搭建

一、MQTT 常见服务器

MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息协议,专为低带宽、高延迟或不可靠的网络环境设计。它广泛应用于物联网(IoT)领域,用于设备间的消息传输。以下是一些常见的MQTT服务器:

  1. Mosquitto
    Mosquitto是最早的开源MQTT代理之一,由Eclipse基金会维护。它支持MQTT v3.1和v3.1.1协议,适用于各种平台,包括Linux、Windows和macOS。Mosquitto以其稳定性和广泛的社区支持而闻名。

  2. EMQ X(现在称为EMQX):
    EMQ X是一个高性能、开源的MQTT代理,专为云原生和物联网环境设计。它提供了高并发连接支持、集群部署、多租户、安全性和桥接功能。EMQ X还提供了丰富的监控和管理工具,以及对MQTT v5.0的支持。

  3. HiveMQ
    HiveMQ是一个商业化的MQTT代理,提供开源和企业版。它以其高性能、可靠性和易用性而受到好评。HiveMQ支持MQTT v3.1和v3.1.1,提供了强大的集群功能、安全性选项和详细的监控。

  4. RabbitMQ
    RabbitMQ是一个广泛使用的开源消息代理,支持多种消息协议,包括MQTT。虽然它最初是为AMQP设计的,但它通过插件系统支持MQTT协议。RabbitMQ提供了强大的路由、队列和消息持久化功能。

  5. ActiveMQ
    ActiveMQ是Apache基金会的一个项目,它是一个多协议消息代理,支持多种消息协议,包括MQTT。ActiveMQ提供了丰富的特性,如消息持久化、集群支持和多种语言的客户端库。

  6. VerneMQ
    VerneMQ是一个基于Erlang的开源MQTT代理,它提供了高性能、可靠性和可扩展性。VerneMQ支持MQTT v3.1和v3.1.1,以及MQTT v5.0的早期访问版本。

  7. AWS IoT
    Amazon Web Services(AWS)提供了一个完全托管的MQTT服务,称为AWS IoT。它允许设备安全地连接到AWS云服务,并与其他AWS服务集成,如AWS Lambda和Amazon S3。

  8. Azure IoT Hub
    Microsoft Azure提供了一个名为Azure IoT Hub的服务,它支持MQTT协议,并提供了设备管理、消息路由和安全性功能。

  9. Google Cloud IoT Core
    Google Cloud IoT Core是一个完全托管的服务,允许设备通过MQTT等协议连接到Google Cloud平台。

  10. Moquette
    Moquette是一个轻量级的MQTT代理,用Java编写,适用于嵌入式系统和小型项目。

这些MQTT服务器各有特点,适用于不同的应用场景和需求。在选择MQTT服务器时,应考虑性能、可靠性、安全性、可扩展性以及是否需要支持特定的MQTT版本等因素。

1.2 MQTT Broker 比较与选型——开源与商业服务器/服务对比

二、Linux ubuntu MQTT 服务器

EMQX CLOUD

注意:

  • 端口:占用哪些端口、分别做什么?
  • 配置:
  • 后台管理:默认用户名、密码
  • 迁移:
  • 认证:匿名登录、用户名/密码认证、TLS单向认证、TLS双向认证、xxx认证

在这里插入图片描述
默认用户名及密码: admin / public

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

# 配置、重启自启动
mkdir $PWD/data $PWD/log
chmod 777 $PWD/data $PWD/log
docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 -v $PWD/data:/opt/emqx/data -v $PWD/log:/opt/emqx/log  emqx:5.5.1



https://www.emqx.io/docs/zh/latest/network/tls-certificate.html

MQTT入门篇

https://zhuanlan.zhihu.com/p/20888181

物联网(Internet of Things,IoT)最近曝光率越来越高。虽然HTTP是网页的事实标准,不过机器之间(Machine-to-Machine,M2M)的大规模沟通需要不同的模式:之前的请求/回答(Request/Response)模式不再合适,取而代之的是发布/订阅(Publish/Subscribe)模式。这就是轻量级、可扩展的MQTT(Message Queuing Telemetry Transport)可以施展拳脚的舞台。

# MQTT简介

MQTT是基于二进制消息的发布/订阅编程模式的消息协议,最早由IBM提出的,如今已经成为OASIS规范。由于规范很简单,非常适合需要低功耗和网络带宽有限的IoT场景,比如:

MQTT协议-MQTT协议简介及协议原理

https://blog.csdn.net/JIESA/article/details/50635222

没想到学了 MQTT 后,竟然有那么多疑问

https://www.sohu.com/a/279848242_633698

物联网曾被认为是继计算机、互联网之后,信息技术行业的第三次浪潮。随着基础通讯设施的不断完善,尤其是 5G 的出现,进一步降低了万物互联的门槛和成本。

物联网协议比较:MQTT 和 MQTT-SN

https://blog.csdn.net/ninioq/article/details/94622951

MQTT调试工具

实例:使用MQTT进行交互

https://www.jianshu.com/p/b452e2cee0d6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值