
Eclipse Mosquitto:开源 MQTT 消息代理服务器
来源标题:Eclipse Mosquitto – An open source MQTT broker
Eclipse Mosquitto 是 MQTT 协议 5.0、3.1.1 和 3.1 版本的开源服务器实现。它附带 C/C++ 客户端库,以及用于发布订阅的 mosquitto_pub、mosquitto_rr、mosquitto_sub 工具和用于管理的 mosquitto_ctrl、mosquitto_signal、mosquitto_passwd 应用。项目还提供公共测试服务器,并支持多平台二进制安装。
以下正文由 AI 翻译自 Hacker News(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
Mosquitto 是 MQTT 协议 5.0、3.1.1 和 3.1 版本服务器的开源实现。它还包含 C 和 C++ 客户端库、用于发布和订阅的 mosquitto_pub、mosquitto_rr 和 mosquitto_sub 工具,以及用于协助管理 broker 的 mosquitto_ctrl、mosquitto_signal 和 mosquitto_passwd 应用程序。 有关 MQTT 的更多信息,请参阅以下链接: Mosquitto 项目信息可在以下位置获取: 此外,还有一个公共测试服务器,地址为 https://test.mosquitto.org/ 有关在各平台上安装二进制包的详细信息,请参阅 https://mosquitto.org/download/。 如果你安装的是二进制包,broker 应该已经自动启动。如果没有,可以用一个非常基础的配置来启动它: mosquitto_sub -t 'test/topic' -v 要发布消息: mosquitto_pub -t 'test/topic' -m 'hello world' 请注意,这样启动 broker 允许匿名/未认证访问,但仅限本机,因此只在初步测试时真正有用。 如果你希望来自另一台计算机的客户端能够连接,则需要提供配置文件。如果你是从二进制包安装的,配置文件中可能已经位于 /etc/mosquitto/mosquitto.conf 之类的位置。如果你是从源码编译的,可以编写配置文件,然后以 mosquitto -c /path/to/mosquitto.conf 运行。 要开始编写配置文件,你需要定义一个 listener,并需要考虑需要什么样的认证。不建议在 broker 公开可用时以匿名访问方式运行。 有关如何操作的详细信息,请查看可用的认证方法和动态安全插件。 broker、客户端和客户端库 API 的文档可在 man 手册页中找到,也可在线访问 https://mosquitto.org/man/。还有一些页面介绍了 MQTT 的特性、用于处理用户名/密码的 mosquitto_passwd 实用程序,以及 broker 可用的配置文件选项说明。 详细的客户端库 API 文档可在 https://mosquitto.org/api/ 找到 要从源码构建,最终用户推荐的方式是从 https://mosquitto.org/download/ 下载归档文件。 在 Windows 和 Mac 上,使用 cmake 构建。在其他平台上,只需运行 make 即可构建。对于 Windows,另请参阅 README-windows.md。 如果你是从 git 仓库构建,则文档不会预先构建。使用 make binary 跳过构建 man 手册页,或在 Debian/Ubuntu 系统上安装 docbook-xsl。 cJSON - 必需 c-ares(Debian 系系统上为 libc-ares-dev)- 可选,通过 WITH_SRV=yes 启用 libedit - 用于 mosquitto_ctrl 交互式 shell - 可选,通过 WITH_EDITLINE=no 禁用 libmicrohttpd - 用于 broker http api 支持 - 可选,通过 WITH_HTTP_API=no 禁用 openssl(Debian 系系统上为 libssl-dev)- 可选,通过 WITH_TLS=no 禁用 pthreads - 用于客户端库线程支持。这是支持 mosquitto_loop_start() 和 mosquitto_loop_stop() 函数所必需的。如果在没有 pthread 支持的情况下编译,该库不保证线程安全。 sqlite3 - 用于 broker 的持久化支持 - 可选,通过 WITH_SQLITE=no 禁用 uthash / utlist - 提供了这些头文件的捆绑版本,通过 WITH_BUNDLED_DEPS=no 禁用其使用 xsltproc(Debian 系系统上为 xsltproc 和 docbook-xsl)- 仅在从 git 源码构建时需要 - 通过 WITH_DOCS=no 禁用 使用 CMake 构建时,也有用于启用/禁用功能的等效选项。在 CMake 构建中还可以启用/禁用构建特定插件。 你可以使用 vcpkg 依赖管理器下载并安装 mosquitto: git clone https://github.com/Microsoft/vcpkg.git cd vcpkg ./bootstrap-vcpkg.sh ./vcpkg integrate install ./vcpkg install mosquitto vcpkg 中的 mosquitto 端口由 Microsoft 团队成员和社区贡献者保持更新。如果版本过旧,请在 vcpkg 仓库中创建 issue 或 pull request。 Mosquitto 由 Roger Light roger@atchoo.org 编写。社区中的其他人也在代码和其他帮助方面做出了大量贡献。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。