[發(fā)明專利]基于非阻塞IO模型的設(shè)備通訊方法在審
| 申請(qǐng)?zhí)枺?/td> | 202210429983.5 | 申請(qǐng)日: | 2022-04-22 |
| 公開(kāi)(公告)號(hào): | CN114915577A | 公開(kāi)(公告)日: | 2022-08-16 |
| 發(fā)明(設(shè)計(jì))人: | 張祖興 | 申請(qǐng)(專利權(quán))人: | 武漢泰銘恒創(chuàng)信息技術(shù)股份有限公司 |
| 主分類號(hào): | H04L43/10 | 分類號(hào): | H04L43/10;H04L9/40 |
| 代理公司: | 北京和聯(lián)順知識(shí)產(chǎn)權(quán)代理有限公司 11621 | 代理人: | 王立麗 |
| 地址: | 430000 湖北省武漢市東湖新技術(shù)開(kāi)*** | 國(guó)省代碼: | 湖北;42 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 阻塞 io 模型 設(shè)備 通訊 方法 | ||
本發(fā)明公開(kāi)了基于非阻塞IO模型的設(shè)備通訊方法,屬于通訊方法技術(shù)領(lǐng)域。采用了springboot打jar包運(yùn)行方式,方便可以快速任意部署在windows和linux等平臺(tái),為提高服務(wù)端的響速度和集群模式,使用了redis集群作為數(shù)據(jù)內(nèi)存共享工具。與現(xiàn)有通過(guò)http、socket等方案相比,比http服務(wù)端的并發(fā)量能有100倍的提升,與傳統(tǒng)socket相比,終端連接數(shù)量和使用便捷度在3倍以上。對(duì)服務(wù)器的要求會(huì)降低只好一般。接入難度較低,能節(jié)省一半時(shí)間。
技術(shù)領(lǐng)域
本發(fā)明涉及通訊方法技術(shù)領(lǐng)域,更具體地說(shuō),涉及基于非阻塞IO模型的設(shè)備通訊方法。
背景技術(shù)
在目前智慧社區(qū)中的門禁設(shè)備交互場(chǎng)景中,設(shè)備數(shù)據(jù)的安全性無(wú)法提升,在學(xué)校刷臉消費(fèi)機(jī)和自動(dòng)售貨柜設(shè)備上無(wú)法正常使用,不能支持?jǐn)?shù)百學(xué)校學(xué)生同時(shí)消費(fèi),且能夠進(jìn)行設(shè)備交互,其問(wèn)題性和數(shù)據(jù)實(shí)時(shí)性以及設(shè)備監(jiān)控方面無(wú)法達(dá)到最好狀態(tài)。
專利號(hào)CN202011463908.8公開(kāi)了一種基于VB環(huán)境下電測(cè)系統(tǒng)多臺(tái)串口設(shè)備通訊方法,包括以下步驟:功能性函數(shù)封裝,添加報(bào)文隊(duì)列;報(bào)文解析函數(shù)封裝,解析已收到報(bào)文并將解析的數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的數(shù)據(jù)結(jié)構(gòu)中;通過(guò)狀態(tài)機(jī)函數(shù)來(lái)完成包括以下功能的任務(wù):功能進(jìn)度控制、突發(fā)上送處理、異常處理、狀態(tài)刷新、報(bào)文解析任務(wù);外部計(jì)時(shí)器循環(huán)調(diào)用狀態(tài)機(jī)函數(shù),處理及刷新當(dāng)前任務(wù)進(jìn)度;狀態(tài)機(jī)判斷當(dāng)前任務(wù)狀態(tài),如果是處于忙碌狀態(tài)則等待,優(yōu)先處理高優(yōu)先級(jí)數(shù)據(jù),空閑時(shí)發(fā)送鏈路判斷通訊報(bào)文;每次調(diào)用時(shí)需要讀取串口緩沖池里的數(shù)據(jù)放入臨時(shí)緩存區(qū),每次讀取到的內(nèi)容加在后面,先在臨時(shí)緩存區(qū)找到報(bào)文幀的報(bào)頭,根據(jù)報(bào)頭和幀結(jié)構(gòu)找到報(bào)文長(zhǎng)度字節(jié),通過(guò)長(zhǎng)度找到報(bào)尾并驗(yàn)證是否正確,再根據(jù)幀結(jié)構(gòu)驗(yàn)證校驗(yàn)位是否正確,如果任何一個(gè)判斷出現(xiàn)了否定,則繼續(xù)找下一個(gè)報(bào)頭,直到找到完整數(shù)據(jù)幀,找到完整報(bào)文幀后,將報(bào)文放入解析函數(shù)中解析,已找到有效報(bào)文后則清除前面無(wú)效的報(bào)文,沒(méi)有臟報(bào)文,則不處理。
此專利解決了在如果遇到會(huì)主動(dòng)上送的數(shù)據(jù),會(huì)出現(xiàn)連幀解析問(wèn)題,處理不好容易丟幀丟數(shù)據(jù),對(duì)于終端設(shè)備響應(yīng)較慢時(shí),處理不好容易執(zhí)行錯(cuò)亂當(dāng)前任務(wù)的問(wèn)題;但無(wú)法與現(xiàn)有通過(guò)http、socket等方案相比,比http服務(wù)端的并發(fā)量能有100倍的提升,與傳統(tǒng)socket相比,終端連接數(shù)量和使用便捷度在3倍以上,對(duì)服務(wù)器的要求會(huì)降低只好一般,接入難度較低,能節(jié)省一半時(shí)間。
發(fā)明內(nèi)容
1.要解決的技術(shù)問(wèn)題
本發(fā)明的目的在于提供基于非阻塞IO模型的設(shè)備通訊方法,以解決上述背景技術(shù)中提出的問(wèn)題。
2.技術(shù)方案
基于非阻塞IO模型的設(shè)備通訊方法,包括以下步驟:
S1:使用Spring Boot生產(chǎn)jar包方式進(jìn)行打包;
S2:選用redis集群作為數(shù)據(jù)內(nèi)存共享工具提高服務(wù)端的響應(yīng)速度;
S3:采用的具體的加密驗(yàn)證方法對(duì)數(shù)據(jù)進(jìn)行加密;
S4:使用心跳機(jī)制和分布式自增機(jī)制對(duì)設(shè)備數(shù)據(jù)傳輸丟包問(wèn)題進(jìn)行處理。
優(yōu)選的,所述步驟S1中,結(jié)合Spring Boot與Spring Cloud和Docker技術(shù)來(lái)構(gòu)建微服務(wù)并部署到云端。
優(yōu)選的,所述S2中,Redis支持三種集群方案,包括主從復(fù)制模式、哨兵模式和Cluster模式。
優(yōu)選的,所述步驟S3中,復(fù)制模式:master能自動(dòng)將數(shù)據(jù)同步到slave,可以進(jìn)行讀寫分離,分擔(dān)master的讀壓力。
優(yōu)選的,所述步驟S3中,哨兵模式:
S31:監(jiān)控master、slave是否正常運(yùn)行;
S32:當(dāng)master出現(xiàn)故障時(shí),能自動(dòng)將一個(gè)slave轉(zhuǎn)換為master;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于武漢泰銘恒創(chuàng)信息技術(shù)股份有限公司,未經(jīng)武漢泰銘恒創(chuàng)信息技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210429983.5/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。





