Akasa 0.1.0 发布: 一个高性能低延迟的 MQTT server (broker)
💡
原文中文,约900字,阅读约需2分钟。
📝
内容提要
介绍了一个支持MQTT v3.1/v3.1.1/v5.0的高性能低延迟网络IO实现,支持多种协议和扩展服务器功能。经过测试,比较了多个MQTT服务器的性能表现。
🎯
关键要点
- 支持 MQTT v3.1/v3.1.1/v5.0 的高性能低延迟网络 IO 实现
- 支持 TLS/WebSocket/WebSocket-TLS 和 Proxy Protocol V2
- 使用 io_uring(glommio) 提高网络 IO 性能
- 提供 Hook trait 以方便扩展服务器功能
- 经过认真测试,比较多个 MQTT 服务器的性能表现
- 测试环境使用 Intel® Xeon® E5-2678 v3 CPU 和 32GB DDR4 内存
- FlashMQ 在 250k 连接下仅使用 0.9GB 内存,表现优异
- Akasa 和 EMQX 在 250k 连接下均使用 5GB 内存
- VerneMQ 在 50k 连接下使用 20GB 内存,性能较差
- FlashMQ 在 40k 连接下达到 600k 消息/秒,CPU 使用率 550%
- Akasa 在 35k 连接下达到 500k 消息/秒,CPU 使用率 1050%
- EMQX 在 20k 连接下达到 300k 消息/秒,CPU 使用率 3000%
- VerneMQ 在 25k 连接下达到 370k 消息/秒,CPU 使用率 2600%
➡️