返回

一步一步教你搭建属于你的 Broker

后端

前言

在上一篇文章中,我们简要介绍了如何使用公共 Broker 进行测试。但显然,我们不能将测试服务器用作生产环境服务器。因此,我们需要搭建一个属于自己的服务器。

使用 Mosquitto 搭建 Broker

说到 MQTT Broker,Mosquitto 可谓是开源界的佼佼者。它以其轻量级、高性能和易于使用而著称。接下来,我们就将使用 Mosquitto 来搭建一个属于自己的 Broker。

安装 Mosquitto

首先,我们需要在服务器上安装 Mosquitto。具体步骤如下:

  1. 下载 Mosquitto:前往 Mosquitto 官网(https://mosquitto.org/)下载适用于你操作系统的安装包。
  2. 安装 Mosquitto:双击安装包,按照提示完成安装。
  3. 启动 Mosquitto:安装完成后,启动 Mosquitto 服务。在 Windows 系统中,可以通过「开始」菜单找到 Mosquitto 服务并启动它。在 Linux 系统中,可以使用以下命令启动 Mosquitto:
sudo systemctl start mosquitto

测试 Mosquitto

为了确保 Mosquitto 正确运行,我们可以使用 MQTT 客户工具进行测试。这里推荐使用 MQTT.fx。

  1. 下载并安装 MQTT.fx:前往 MQTT.fx 官网(https://mqttfx.org/)下载适用于你操作系统的安装包。
  2. 连接到 Mosquitto:启动 MQTT.fx 后,在「Broker」栏中输入服务器的 IP 地址和端口号(默认端口号为 1883)。然后,点击「Connect」按钮连接到 Mosquitto。
  3. 发送和接收消息:连接成功后,你可以在 MQTT.fx 中发送和接收消息。在「Topic」栏中输入主题,在「Message」栏中输入消息内容,然后点击「Publish」按钮发送消息。在「Messages」栏中,你可以看到你发送和接收的消息。

使用 Node.js 和 Eclipse Paho 创建 MQTT 客户端

现在,我们已经搭建好了 MQTT Broker。接下来,我们需要使用 Node.js 和 Eclipse Paho 来创建 MQTT 客户端。

安装 Node.js

首先,我们需要在服务器上安装 Node.js。具体步骤如下:

  1. 下载 Node.js:前往 Node.js 官网(https://nodejs.org/)下载适用于你操作系统的安装包。
  2. 安装 Node.js:双击安装包,按照提示完成安装。

安装 Eclipse Paho

接下来,我们需要安装 Eclipse Paho。Eclipse Paho 是一个用于 MQTT 的开源客户端库。具体步骤如下:

npm install mqtt

创建 MQTT 客户端

安装完成后,我们就可以使用 Eclipse Paho 来创建 MQTT 客户端了。具体代码如下:

const mqtt = require('mqtt');

const client = mqtt.connect('mqtt://localhost:1883');

client.on('connect', () => {
  console.log('已连接到 MQTT Broker');
});

client.on('message', (topic, message) => {
  console.log('收到消息:', message.toString());
});

client.subscribe('test/topic');

运行 MQTT 客户端

保存代码后,我们可以使用以下命令运行 MQTT 客户端:

node mqtt-client.js

运行成功后,你将在控制台中看到如下输出:

已连接到 MQTT Broker
收到消息: Hello MQTT!

总结

通过本教程,你已经学会了如何使用 Mosquitto、Node.js 和 Eclipse Paho 来搭建和部署 MQTT Broker。现在,你就可以使用 MQTT 来构建属于你的物联网应用了。