该系统主要是通过Spring cloud+nacos+gateway+redis+mysql+自定义消息队列+K8S+aliyun ECS进行开发,基于二期工程后为了适应大量用户的访问、更好的监控设备是否故障或网络中断及更方便的部署服务,增加监控设备服务模块,并将命令下发模块拆分重构成一个独立的工程产品(DC)来开发,向上接入业务模块下发的业务记录,向下对消息进行存储转化下发给对应设备,并在DC中自定义消息队列来按顺序存储消息;
当业务模块调用DC暴露的接口前,业务模块需自定义生成一个traceId(为了追踪整个流程)及sourceId(记录消息来源)作为header请求头传递给DC接口,DC通过检验该记录是否符合消息规范从而进一步处理;
若检验通过则进行保存并将traceId,sourceId进行保存,并调用提交接口将该记录进行转换成设备所需消息规则进行下发,(转换成的消息上带上rid随机码值保存到消息表),设备会返回传递的rid、code、timestamp属性值,若设备返回的code码200则表明下发成功,更新消息表标识为成功标识;若设备返回code码非200成功码,则下发失败并