案例测试 本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Mosquitto工具通信。请通过网线将评估板千兆网口RGMII ETH和上位机连接至公网,确保可正常访问互联网。 表 1 服务器名称 Broker地址 TCP端口 WebSocket HiveMQ broker.hivemq.com 1883 8000 Mosquitto test.mosquitto.org 1883 /mqtt_client -h broker.hivemq.com -p 1883 -M subscribe -t test/data 在上位机执行如下命令发布消息至MQTT服务器。 案例测试 本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Web程序通信。请通过网线将评估板千兆网口RGMII ETH和上位机连接至公网,确保可正常访问互联网。 在弹出的Web页面(如下图),依次输入MQTT服务器:broker.hivemq.com,端口号:8000,最后点击连接,Web页面将会从MQTT服务器获取正弦波数据并进行波形绘制。
案例测试本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Mosquitto工具通信。请通过网线将评估板千兆网口ETH0 RGMII和上位机连接至公网,确保可正常访问互联网。 Host# mosquitto_sub -h broker.hivemq.com -p 1883 -t test/data参数解析:-h:指定MQTT服务器;-p:指定MQTT服务器TCP端口;-t:定义 /mqtt_client -h broker.hivemq.com -p 1883 -M subscribe -t test/data在上位机执行如下命令发布消息至MQTT服务器。 案例测试本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Web程序通信。请通过网线将评估板千兆网口ETH0 RGMII和上位机连接至公网,确保可正常访问互联网。 在弹出的Web页面(如下图),依次输入MQTT服务器:broker.hivemq.com,端口号:8000,最后点击连接,Web页面将会从MQTT服务器获取正弦波数据并进行波形绘制。
MQTT Broker选型HiveMQ CE:开源、高性能、支持MQTT 5.0Mosquitto:轻量级、易于部署EMQ X:企业级、支持百万级连接2. Docker部署示例version: '3'services: mqtt-broker: image: hivemq/hivemq-ce ports: - "1883:1883" # MQTT - "8080:8080" # HiveMQ Web UI volumes: - . /hivemq/config:/opt/hivemq/conf - ./hivemq/data:/opt/hivemq/data - . /hivemq/log:/opt/hivemq/log restart: always spring-boot-app: build: .
案例测试本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Mosquitto工具通信。请通过网线将评估板千兆网口ETH0(RGMII)和上位机连接至公网,确保可正常访问互联网。 Host# mosquitto_sub -h broker.hivemq.com -p 1883 -t test/data参数解析:-h:指定MQTT服务器;-p:指定MQTT服务器TCP端口;-t:定义 /mqtt_client -h broker.hivemq.com -p 1883 -M subscribe -t test/data在上位机执行如下命令发布消息至MQTT服务器。 案例测试本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Web程序通信。请通过网线将评估板千兆网口ETH0(RGMII)和上位机连接至公网,确保可正常访问互联网。 在弹出的Web页面(如下图),依次输入MQTT服务器:broker.hivemq.com,端口号:8000,最后点击连接,Web页面将会从MQTT服务器获取正弦波数据并进行波形绘制。
其过程是通过重复向HiveMQ发布一个主题为EdgeXEvents,内容为一个json数据。 然后客户端也通过HiveMQ连接到broker.mqttdashboard.com,订阅EdgeXEvents主题,则可以获取到json数据。 https://docs.edgexfoundry.org/1.2/getting-started/quick-start/ 有两点要注意:提供的HiveMQ网站,其js脚本中的JQuery可能会由于外网的原因无法加载
例如:HiveMQ Broker HiveMQ Broker 是一个强大的企业级 MQTT 平台,能够实现连接设备与企业系统之间的可靠、安全和可扩展的数据传输。 参考链接: https://mosquitto.org/ https://cedalo.com/mqtt-broker-pro-mosquitto/ https://www.hivemq.com/products
04、HiveMQ HiveMQ 在商业 MQTT 领域享有盛誉。其社区版 (CE) 将许多企业级功能带到了开源领域。 HiveMQ CE 采用 Java 开发,专注于可靠性和性能以及开发者友好的集成。 核心功能: 稳定的核心:经过各个企业可靠性验证,现在可供开源使用。 查看链接: https://www.mqtt-dashboard.com/ 下载链接: https://www.hivemq.com/download/ 典型应用场景:偏好 Java 生态系统且中大型
图 3案例测试本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Mosquitto工具通信。请通过网线将评估板千兆网口ETH0 RGMII和上位机连接至公网,确保可正常访问互联网。 Host# mosquitto_sub -h broker.hivemq.com -p 1883 -t test/data参数解析:-h:指定MQTT服务器;-p:指定MQTT服务器TCP端口;-t:定义 /mqtt_client -h broker.hivemq.com -p 1883 -M publish -t test/data -m 'www.tronlong.com'图 6 评估板发布消息发布成功后 /mqtt_client -h broker.hivemq.com -p 1883 -M subscribe -t test/data图 8在上位机执行如下命令发布消息至MQTT服务器。 Host# mosquitto_pub -h broker.hivemq.com -p 1883 -t test/data -m www.tronlong.com图 9 上位机发布消息发布成功后,评估板将从
图 3 案例测试 本案例使用公网MQTT HiveMQ服务器与上位机Ubuntu Mosquitto工具通信。请通过网线将评估板千兆网口ETH0 RGMII和上位机连接至公网,确保可正常访问互联网。 表 1 服务器名称 Broker地址 TCP端口 WebSocket HiveMQ broker.hivemq.com 1883 8000 Mosquitto test.mosquitto.org 1883 Host# mosquitto_sub -h broker.hivemq.com -p 1883 -t test/data 参数解析: -h:指定MQTT服务器; -p:指定MQTT服务器TCP端口; /mqtt_client -h broker.hivemq.com -p 1883 -M subscribe -t test/data 图 8 在上位机执行如下命令发布消息至MQTT服务器。 Host# mosquitto_pub -h broker.hivemq.com -p 1883 -t test/data -m www.tronlong.com 图 9 上位机发布 消息发布成功后,
我们使用 HiveMQ 作为MQTT的基础消息组件,然后查看EdgeX是否能够将Random-Integer-Generator01设备的消息推送到HiveMQ中。 4.1安装HiveMQ 安装手册见:https://www.hivemq.com/downloads/docker/。这里直接使用Docker安装部署。 下面的命令会自动下载并运行hivemq4的镜像。 docker run -p 8080:8080 -p 1883:1883 hivemq/hivemq4 4.2注册应用到EdgeX curl -X POST -d '{ "name":"QuickStartExport "enable":true, "destination":"MQTT_TOPIC" }' http://localhost:48071/api/v1/registration 然后通过HiveMQ
网址:https://mosquitto.org/ HiveMQ HiveMQ 提供了一个商业级的MQTT broker,同时也为Java开发者提供了一个客户端库。 网址:https://www.hivemq.com/ libmoquette Libmoquette 是一个用C++编写的轻量级MQTT broker库,可以在Linux和其他平台上运行。
mqtt 协议在 python 编程语言中发布任何图片: import time from paho.mqtt import client as mqtt_client broker = 'broker.hivemq.com pip3 install paho-mqtt 对于本期教程,我使用的是免费的 hivemq 公共 MQTT 代理。代码中的 broker 地址、端口凭证是 hivemq 公共 mqtt 代理的凭证。 f.write(final_img) f.close() 完整的代码如下所示: from paho.mqtt import client as mqtt_client broker = 'broker.hivemq.com
MQTT 协议通信的库):using M2Mqtt;using M2Mqtt.Client;class Program{ static string brokerAddress = "broker.hivemq.com "; // MQTT 代理服务器地址,这里使用公共的 HiveMQ 测试服务器 static int brokerPort = 1883; // 默认 MQTT 端口 static void " + message + ",来自主题:" + e.Topic); }}代码注释如下:首先定义了brokerAddress(MQTT 代理服务器地址,这里使用公共的免费测试服务器broker.hivemq.com
有用链接 Eclipse Mosquitto 安全文档https://mosquitto.org/documentation/ HiveMQ 安全指南https://www.hivemq.com/blog /mqtt-security-fundamentals/ MQTT 中的 TLS 与证书https://www.hivemq.com/blog/mqtt-security-fundamentals-tls-ssl
全球工业物联网玩家如 Canary Labs、Cirrus Link、Chevron、Inductive Automation、HiveMQ 和 ORing 选择 Sparkplug 协议及相关技术,以理顺对工业数据的访问 参考链接: https://projects.eclipse.org/projects/iot.sparkplug https://www.hivemq.com/blog/sparkplug-essentials-part mqtt-sparkplug-bridging-it-and-ot-in-industry-4-0 https://www.emqx.com/en/blog/mqtt-sparkplug-bridging-it-and-ot-in-industry-4-0 https://www.hivemq.com /resources/hivemq-mqtt-sparkplug-open-specification-for-iiot-whitepaper/ https://www.opc-router.com/what-is-sparkplug / https://sparkplug.eclipse.org/specification/ https://www.hivemq.com/blog/mqtt-sparkplug-essentials-part
class MqttExample { public static void main(String[] args) { String broker = "tcp://broker.hivemq.com 你将看到以下输出:Connecting to broker: tcp://broker.hivemq.com:1883ConnectedMessage arrived: Hello MQTTDisconnected
HiveMQ CE – HiveMQ CE 是基于 Java 的开源 MQTT 消息服务器,它完全支持 MQTT 3.x 和 MQTT 5,是 HiveMQ 企业版消息连接平台的基础。
✔ ✔ ✔ ✔ ✔ ✔ flespi ✔ ✔ ✔ ✔ ✘ ✘ ✔ ✔ ✔ ✔ ✘ GnatMQ ✔ ✔ ✔ ✔ ✘ ✘ ✘ ✔ ✘ ✘ ✘ HBMQTT ✔ ✔ ✔ ✔ ✘ ✔ ✔ ✔ ✘ ✔ ✔ HiveMQ
免费的MQTT broker MQTT connection settings Host: broker.hivemq.com TCP Port: 1883 Websocket Port: 8000 TLS TCP Port: 8883 TLS Websocket Port: 8884 MQTT Websocket Client (hivemq.com)
publicclassMqttPublisher { publicstaticvoidmain(String[] args) { // 连接参数 Stringbroker="tcp://broker.hivemq.com publicclassMqttSubscriberimplementsMqttCallback { publicstaticvoidmain(String[] args) { String broker = "tcp://broker.hivemq.com