基于非阻塞IO模型的设备通讯方法技术

技术编号:34556232 阅读:27 留言:0更新日期:2022-08-17 12:42
本发明专利技术公开了基于非阻塞IO模型的设备通讯方法,属于通讯方法技术领域。采用了springboot打jar包运行方式,方便可以快速任意部署在windows和linux等平台,为提高服务端的响速度和集群模式,使用了redis集群作为数据内存共享工具。与现有通过http、socket等方案相比,比http服务端的并发量能有100倍的提升,与传统socket相比,终端连接数量和使用便捷度在3倍以上。对服务器的要求会降低只好一般。接入难度较低,能节省一半时间。能节省一半时间。能节省一半时间。

【技术实现步骤摘要】
基于非阻塞IO模型的设备通讯方法


[0001]本专利技术涉及通讯方法
,更具体地说,涉及基于非阻塞IO模型的设备通讯方法。

技术介绍

[0002]在目前智慧社区中的门禁设备交互场景中,设备数据的安全性无法提升,在学校刷脸消费机和自动售货柜设备上无法正常使用,不能支持数百学校学生同时消费,且能够进行设备交互,其问题性和数据实时性以及设备监控方面无法达到最好状态。
[0003]专利号CN202011463908.8公开了一种基于VB环境下电测系统多台串口设备通讯方法,包括以下步骤:功能性函数封装,添加报文队列;报文解析函数封装,解析已收到报文并将解析的数据存储至对应的数据结构中;通过状态机函数来完成包括以下功能的任务:功能进度控制、突发上送处理、异常处理、状态刷新、报文解析任务;外部计时器循环调用状态机函数,处理及刷新当前任务进度;状态机判断当前任务状态,如果是处于忙碌状态则等待,优先处理高优先级数据,空闲时发送链路判断通讯报文;每次调用时需要读取串口缓冲池里的数据放入临时缓存区,每次读取到的内容加在后面,先在临时缓存区找到报文帧的报本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.基于非阻塞IO模型的设备通讯方法,其特征在于:包括以下步骤:S1:使用Spring Boot生产jar包方式进行打包;S2:选用redis集群作为数据内存共享工具提高服务端的响应速度;S3:采用的具体的加密验证方法对数据进行加密;S4:使用心跳机制和分布式自增机制对设备数据传输丢包问题进行处理。2.根据权利要求1所述的基于非阻塞IO模型的设备通讯方法,其特征在于:所述步骤S1中,结合Spring Boot与Spring Cloud和Docker技术来构建微服务并部署到云端。3.根据权利要求1所述的基于非阻塞IO模型的设备通讯方法,其特征在于:步骤S2中,Redis支持三种集群方案,包括主从复制模式、哨兵模式和Cluster模式。4.根据权利要求1所述的基于非阻塞IO模型的设备通讯方法,其特征在于:所述步骤S3中,复制模式:master能自动将数据同步到slave,可以进行读写分离,分担master的读压力。5.根据权利要求1所述的基于非阻塞IO模型的设备通讯方法,其特征在于:所述步骤S3中,哨兵模式:S31:监控master、slave是否正常运行;S32:当master出现故障时,能自动将一个slave转换为master;S33:多个哨兵可以监控同一个Redis,哨兵之间也会自动监控;S34:哨兵启动后,会与要监控的master建立两条连接。6.根据权利要求1所述的基于非阻塞IO模型的设备通讯方法,其特征在于:所述步骤S3中,Cluster模式:在Redis的每个节点上,都有一个插槽(slot),取值范围为0

16383;当我们存取key的时候,Redis会根据CRC16的算法得出一个结果,然后把结果对16384求余数,这样每个key都会对应一个编号在0

16383之间的哈希槽,通过这个值,去找到对应的插槽所对应的节点,然后直接自动跳转到这个对应的节点上进行存取操作;为了保证高可用,Cluster模式也引入主从复制模式,一个主节点对应一个或者多个从节点,当主节点宕机的时候,就会启用从节...

【专利技术属性】
技术研发人员:张祖兴
申请(专利权)人:武汉泰铭恒创信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1