Why NanoMQ

MQTT 5.0 + NanoMQ/NNG

MQTT 5.0 + NanoMQ/NNG

MQTT Bridges (Cloud + Edge)

MQTT Bridges (Cloud + Edge)

Embedded Rule Engine

Embedded Rule Engine

Message Backup in Edge

Message Backup in Edge

性价比高

NanoMQ 启动仅占用很少的资源,支持在资源有限的硬件平台上运行,并且达到很高的性能和消息吞吐。其内置丰富的配置参数可以根据不同平台的情况调优以达到性能资源均衡点。

性价比高

可拓展

NanoMQ 具有优秀的多核 SMP(对称多处理)支持和多线程性能。我们针对 Linux 平台和 MQTT 协议优化了 NNG 的异步 I/O 模型,因此 NanoMQ 在现代 SMP 系统能够以更少的 CPU 资源占用去承担高达一百万每秒的消息吞吐压力。

可拓展

高兼容性

针对边缘端碎片化的操作系统,从项目诞生之初,NanoMQ 就只依赖原生 POSIX API 开发,具有高兼容性。而基于 POSIX API 的操作系统是目前最受欢迎也是最广泛使用的。因此,社区用户能够更简单的自定义 NanoMQ 或对其进行二次开发,用于跨平台的边缘计算应用。

高兼容性

高可移植性

NanoMQ 诞生之初的目标之一就包括具备极高的可移植性,因此我们使用纯 C/C++ 开发,让其核心功能不依赖任何第三方库。所以用户只需要极小的工作量,简单修改 CMake 即可移植到各种嵌入式硬件架构上。

高可移植性

高性能

性能是消息服务器的一大考量标准。NanoMQ 为边缘场景而生,其内置的类 Actor 消息模型提供了极高消息吞吐能力和极低的时延。这一优势可以为边缘计算应用提供更强的消息汇聚再分发能力。

高性能

全能多用途

NanoMQ 作为一个 MQTT 消息服务器诞生,但不仅局限于此。其内置的 MQTT 测试和压测工具简便易用。而面对边缘计算场景里碎片化的协议和消息模式,NanoMQ 也志在提供一个全能的消息总线弥合各大流行的协议,如 MQTT、ZeroMQ、nanomsg 和 DDS。

全能多用途

快速开始

使用 Docker 安装

docker run -d --name nanomq nanomq/nanomq:0.5.9

或者使用源码编译

需要 C99 和 C++ 11 标准的编译环境和高于 3.13 的 CMake 版本

git clone https://github.com/nanomq/nanomq.git
cd nanomq ; git submodule update --init --recursive
mkdir build && cd build ; cmake .. ; make

NanoMQ 命令行客户端工具用法

# Publish
nanomq pub  start --url <url> -t <topic> -m <message> [--help]

# Subscribe 
nanomq sub  start --url <url> -t <topic> [--help]

# Connect
nanomq conn start --url <url> [--help]

社区

欢迎加入 NanoMQ 社区,您可以通过以下途径关注社区动态及获取帮助

更多社区信息