NanoMQ简介
NanoMQ是一个开源的边缘计算项目,于2021年1月发布。它是下一代轻量级、高性能的MQTT消息代理,专为物联网(IoT)和工业物联网(IIoT)的边缘计算场景而设计。NanoMQ由EMQ公司开发,是LF Edge基金会的成员项目之一。
NanoMQ的核心目标是在资源受限的边缘设备上提供高性能的MQTT消息服务。它采用纯C语言实现,具有极小的内存占用和启动时间,同时又能充分利用现代多核处理器的性能。NanoMQ基于NNG(nanomsg next generation)网络库构建,继承了其优秀的异步I/O设计,并在此基础上增强了消息传递和调度系统,以最大化整体处理能力。
NanoMQ的主要特性
-
超轻量级: 最小功能集的启动占用不到200KB内存。
-
异步I/O: 内置Actor模型,可以并行化IoT和MQTT的计算处理。
-
多线程支持: 可以轻松扩展以充分利用多核CPU,同时保持较低的CPU使用率。
-
高性能: 在多核CPU上可以实现百万级TPS,性能比Mosquitto快10倍以上。
-
跨平台: 高度兼容基于POSIX的各种平台。
-
互操作性: 数据流透明可定制,便于边缘运维。
-
完全支持MQTT 5.0: 完整支持MQTT 5.0/3.1.1协议,兼容所有标准的开源MQTT SDK。