核心需求

  • 简洁的MQTT服务端,但有无限可能,主要用于企业集中管理设备,默认单机稳定
  • 协议支持mqtt3.1并兼容5.0
  • 使用caffeine/redis来缓存消息
  • 提供基于配置文件的用户名密码认证
  • 提供一个health端点API用于提供系统信息,及连接数等信息
    • 使用Basic Auth
  • 不提供集群,但在redis配置下,支持由外部负载均衡将连接下发到多台服务上,单机异常后不影响业务

系统组件

  • 仅使用Netty做为核心组件,不引入springboot
  • Netty版本为4.1系列版本
  • redis使用netty的redis实现连接
  • rest端点也使用netty的http组件