[发明专利]基于非阻塞IO模型的设备通讯方法在审
申请号: | 202210429983.5 | 申请日: | 2022-04-22 |
公开(公告)号: | CN114915577A | 公开(公告)日: | 2022-08-16 |
发明(设计)人: | 张祖兴 | 申请(专利权)人: | 武汉泰铭恒创信息技术股份有限公司 |
主分类号: | H04L43/10 | 分类号: | H04L43/10;H04L9/40 |
代理公司: | 北京和联顺知识产权代理有限公司 11621 | 代理人: | 王立丽 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 阻塞 io 模型 设备 通讯 方法 | ||
本发明公开了基于非阻塞IO模型的设备通讯方法,属于通讯方法技术领域。采用了springboot打jar包运行方式,方便可以快速任意部署在windows和linux等平台,为提高服务端的响速度和集群模式,使用了redis集群作为数据内存共享工具。与现有通过http、socket等方案相比,比http服务端的并发量能有100倍的提升,与传统socket相比,终端连接数量和使用便捷度在3倍以上。对服务器的要求会降低只好一般。接入难度较低,能节省一半时间。
技术领域
本发明涉及通讯方法技术领域,更具体地说,涉及基于非阻塞IO模型的设备通讯方法。
背景技术
在目前智慧社区中的门禁设备交互场景中,设备数据的安全性无法提升,在学校刷脸消费机和自动售货柜设备上无法正常使用,不能支持数百学校学生同时消费,且能够进行设备交互,其问题性和数据实时性以及设备监控方面无法达到最好状态。
专利号CN202011463908.8公开了一种基于VB环境下电测系统多台串口设备通讯方法,包括以下步骤:功能性函数封装,添加报文队列;报文解析函数封装,解析已收到报文并将解析的数据存储至对应的数据结构中;通过状态机函数来完成包括以下功能的任务:功能进度控制、突发上送处理、异常处理、状态刷新、报文解析任务;外部计时器循环调用状态机函数,处理及刷新当前任务进度;状态机判断当前任务状态,如果是处于忙碌状态则等待,优先处理高优先级数据,空闲时发送链路判断通讯报文;每次调用时需要读取串口缓冲池里的数据放入临时缓存区,每次读取到的内容加在后面,先在临时缓存区找到报文帧的报头,根据报头和帧结构找到报文长度字节,通过长度找到报尾并验证是否正确,再根据帧结构验证校验位是否正确,如果任何一个判断出现了否定,则继续找下一个报头,直到找到完整数据帧,找到完整报文帧后,将报文放入解析函数中解析,已找到有效报文后则清除前面无效的报文,没有脏报文,则不处理。
此专利解决了在如果遇到会主动上送的数据,会出现连帧解析问题,处理不好容易丢帧丢数据,对于终端设备响应较慢时,处理不好容易执行错乱当前任务的问题;但无法与现有通过http、socket等方案相比,比http服务端的并发量能有100倍的提升,与传统socket相比,终端连接数量和使用便捷度在3倍以上,对服务器的要求会降低只好一般,接入难度较低,能节省一半时间。
发明内容
1.要解决的技术问题
本发明的目的在于提供基于非阻塞IO模型的设备通讯方法,以解决上述背景技术中提出的问题。
2.技术方案
基于非阻塞IO模型的设备通讯方法,包括以下步骤:
S1:使用Spring Boot生产jar包方式进行打包;
S2:选用redis集群作为数据内存共享工具提高服务端的响应速度;
S3:采用的具体的加密验证方法对数据进行加密;
S4:使用心跳机制和分布式自增机制对设备数据传输丢包问题进行处理。
优选的,所述步骤S1中,结合Spring Boot与Spring Cloud和Docker技术来构建微服务并部署到云端。
优选的,所述S2中,Redis支持三种集群方案,包括主从复制模式、哨兵模式和Cluster模式。
优选的,所述步骤S3中,复制模式:master能自动将数据同步到slave,可以进行读写分离,分担master的读压力。
优选的,所述步骤S3中,哨兵模式:
S31:监控master、slave是否正常运行;
S32:当master出现故障时,能自动将一个slave转换为master;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉泰铭恒创信息技术股份有限公司,未经武汉泰铭恒创信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210429983.5/2.html,转载请声明来源钻瓜专利网。