物联网平台后端架构设计与性能验证
本文探讨物联网平台后端组件选择,架构设计与性能验证。 组件 EMQX 集群 MQTT 设备接入,通常设备均通过类似 <设备型号>/<设备ID> 的预定义主题前缀收发消息 MQTT 协议接入层,根据 <设备型号> 前缀消费 EMQX 消息,并且根据对应的物模型规则将 MQTT 消息转换为系统物模型消息,然后转发到消息上行 Kafka 消息队列;同时通过消费 Kafka 中的下行物模型指令,根据设备型号对应的物模型规则转换为 MQTT 消息,并发送到 EMQX 集群 Kafka 设备上行消息由规则引擎消费,先保存到时序数据库 InfluxDB,更新 PostgreSQL 中设备状态存储,发送到实时状态 Kafka 消息队列(供API层订阅),然后根据场景规则的触发器判断并触发场景任务,场景任务执行通过 Asynq + Redis 支持 组件性能验证 EMQX 性能测试 EMQX 性能测试对测试客户端性能要求较高,并且由于客户端端口分配问题,每个网卡支持的客户端数量不能大于可分配端口数,因此使用阿里云ECS增加虚拟网卡的方式进行测试,在此使用 4 网卡,每网卡 50000 客户端连接的方式模拟。 ...