摘 要:物聯(lián)網(wǎng)IoT技術(shù)棧獲得快速的發(fā)展,將傳感器的感知數(shù)據(jù)與云端平臺(tái)相耦合,廣泛應(yīng)用于社會(huì)各個(gè)領(lǐng)域,然而隨著大量感知數(shù)據(jù)的產(chǎn)生,傳統(tǒng)的物聯(lián)網(wǎng)技術(shù)難以進(jìn)行大數(shù)據(jù)環(huán)境下的機(jī)器學(xué)習(xí),為此要重點(diǎn)關(guān)注和探討面向大數(shù)據(jù)物聯(lián)網(wǎng)的中間件技術(shù),設(shè)計(jì)和應(yīng)用一種通用、輕量級(jí)的面向大數(shù)據(jù)的IoT中間件平臺(tái),打造端云一體化的界面,滿足用戶的使用需求。
關(guān)鍵詞:大數(shù)據(jù);物聯(lián)網(wǎng);中間件;技術(shù)
一、 引言
物聯(lián)網(wǎng)中間件技術(shù)通過鏈接智能硬件設(shè)備和云端,能夠?qū)Ω兄獙游锫?lián)網(wǎng)智能硬件進(jìn)行靈活擴(kuò)展和動(dòng)態(tài)更新,實(shí)現(xiàn)物聯(lián)網(wǎng)的實(shí)時(shí)感知和云端耦合,充分展示端云一體化的局面,體現(xiàn)出其高效穩(wěn)定性的功能。
二、 ?MDM-IoT中間件平臺(tái)總體方案設(shè)計(jì)
(一)MDM-IoT中間件平臺(tái)架構(gòu)設(shè)計(jì)隨著智能硬件終端的數(shù)量激增,MDM-IoT體現(xiàn)出高效穩(wěn)定數(shù)據(jù)承載能力和大數(shù)據(jù)訓(xùn)練能力,該平臺(tái)主要實(shí)現(xiàn)以下幾個(gè)功能。
1. 海量數(shù)據(jù)處理功能。大數(shù)據(jù)服務(wù)器集群集成有多種算法,如:分布式哈希負(fù)載均衡算法、加權(quán)輪詢負(fù)載均衡算法,實(shí)現(xiàn)多任務(wù)的并行運(yùn)行。并采用分區(qū)存儲(chǔ)的方式,將單個(gè)大數(shù)據(jù)服務(wù)器劃歸為一個(gè)區(qū),實(shí)現(xiàn)對(duì)海量數(shù)據(jù)的處理。
2. 動(dòng)態(tài)算法擴(kuò)展功能。利用算法服務(wù)器的注冊(cè)接口,實(shí)現(xiàn)數(shù)據(jù)分析。并在容器技術(shù)的支撐下,實(shí)現(xiàn)定制算法的靈活快速擴(kuò)展、部署和管理。
3. 遠(yuǎn)程監(jiān)控功能。利用長(zhǎng)連接機(jī)制實(shí)現(xiàn)智能硬件終端和MDM-IoT中間件的鏈接,并添加自主設(shè)計(jì)的心跳數(shù)據(jù),實(shí)時(shí)監(jiān)控智能硬件終端的狀態(tài),并完成智能硬件終端應(yīng)用程序升級(jí)、工作狀態(tài)切換等功能。
(二)大數(shù)據(jù)服務(wù)器架構(gòu)設(shè)計(jì)
1. 通信長(zhǎng)連接方案設(shè)計(jì)。要建立并保持服務(wù)通信長(zhǎng)連接方案,由信道進(jìn)行后續(xù)信息請(qǐng)求的發(fā)送和傳輸,能夠有效實(shí)現(xiàn)高并發(fā)、大流量條件下的負(fù)載均衡。
2. 負(fù)載均衡算法設(shè)計(jì)??梢圆捎迷吹刂稨ash算法,當(dāng)采集物聯(lián)網(wǎng)終端的IP信息后,由服務(wù)器進(jìn)行Hash計(jì)算,預(yù)先設(shè)置好每一個(gè)服務(wù)器的最大連接數(shù),實(shí)現(xiàn)服務(wù)器與智能終端的IP綁定和鏈接,當(dāng)超出其閾值時(shí)即更換其他服務(wù)器完成響應(yīng)。也可以采用加權(quán)輪詢算法,以時(shí)間較長(zhǎng)的某臺(tái)物聯(lián)網(wǎng)智能終端數(shù)據(jù)量為重,數(shù)據(jù)量最小的為輕,通過增添權(quán)重概念的方式,減少數(shù)據(jù)量大的終端所需等待的時(shí)間,提高系統(tǒng)負(fù)載的均衡與穩(wěn)定。通過上述兩種算法進(jìn)行負(fù)載均衡,實(shí)現(xiàn)數(shù)據(jù)傳輸和固件升級(jí)服務(wù)。
3. Node節(jié)點(diǎn)設(shè)計(jì)。引入一致性Hash的理念進(jìn)行Node節(jié)點(diǎn)故障的自動(dòng)排查和擴(kuò)展,體現(xiàn)出平衡特性、單調(diào)特性、分散特性和負(fù)載特性。
4. 數(shù)據(jù)分區(qū)分級(jí)緩存設(shè)計(jì)。按照優(yōu)先級(jí)別采用異步隊(duì)列,多進(jìn)程并行執(zhí)行信道數(shù)據(jù)的分級(jí)緩存、解析和封裝處理,包括心跳數(shù)據(jù)、監(jiān)控?cái)?shù)據(jù)、感知數(shù)據(jù)等,為算法服務(wù)器提供數(shù)據(jù)支持。
5. 遠(yuǎn)程IoT終端固件升級(jí)設(shè)計(jì)。要改變傳統(tǒng)物聯(lián)網(wǎng)終端功能單一的狀態(tài),必須在大數(shù)據(jù)服務(wù)器的支持下進(jìn)行重新定制開發(fā),將Hex固件直接遠(yuǎn)程下發(fā)至物聯(lián)網(wǎng)終端,進(jìn)行自身功能的更新和固件升級(jí)。
(三)云計(jì)算算法服務(wù)器的設(shè)計(jì)引入容器技術(shù),利用Docker鏡像做算法鏡像,方便算法更新,減少系統(tǒng)資源的無謂損耗,體現(xiàn)出極其輕量、秒級(jí)部署、移植簡(jiǎn)便、彈性伸縮的特性,實(shí)現(xiàn)大數(shù)據(jù)訓(xùn)練的高效可靠性擴(kuò)展。同時(shí),在進(jìn)行算法鏡像打包、建立、認(rèn)證、部署、命名等操作時(shí),要依循如下兩大標(biāo)準(zhǔn):算法運(yùn)行標(biāo)準(zhǔn)和算法鏡像標(biāo)準(zhǔn)。
三、 ?MDM-IoT在感知層的耦合設(shè)計(jì)
MDM-IoT支持主流串口、網(wǎng)絡(luò)和無線等多種協(xié)議,并設(shè)計(jì)有自主研發(fā)的數(shù)據(jù)不丟包耦合協(xié)議,實(shí)現(xiàn)丟包數(shù)據(jù)的及時(shí)補(bǔ)發(fā)和處理,確保大數(shù)據(jù)處理的穩(wěn)定高效性。
(一)MDM-IoT大數(shù)據(jù)服務(wù)器網(wǎng)絡(luò)模型設(shè)計(jì)
MDM-IoT的消息推送技術(shù)主要是依據(jù)TCP/IP協(xié)議進(jìn)行重新封裝和優(yōu)化處理,利用其內(nèi)核特性重點(diǎn)監(jiān)控活躍的fd,并構(gòu)建IO多路復(fù)用模型,打造高并發(fā)的消息中間件系統(tǒng)。
(二)MDM-IoT大數(shù)據(jù)服務(wù)器通信協(xié)議設(shè)計(jì)
基于物聯(lián)網(wǎng)的智能硬件設(shè)備作為Client端,要對(duì)通信整體數(shù)據(jù)流進(jìn)行解碼、校驗(yàn)、數(shù)據(jù)完整性查看、數(shù)據(jù)分類、數(shù)據(jù)分析和數(shù)據(jù)展現(xiàn),之后再進(jìn)行Cache域感知數(shù)據(jù)的發(fā)送和及時(shí)清空,設(shè)定三次重新數(shù)據(jù)發(fā)送機(jī)制,當(dāng)三次心跳數(shù)據(jù)傳輸均沒有獲得 MDM-IoT中間件響應(yīng)數(shù)據(jù)時(shí),即視為傳輸網(wǎng)絡(luò)出現(xiàn)故障,默認(rèn)自動(dòng)重新鏈接。
四、 ?MDM-IoT在應(yīng)用層的耦合設(shè)計(jì)
(一)應(yīng)用層耦合框架設(shè)計(jì)在Web前部分采用Tornado異步服務(wù),快速響應(yīng)MDM-IoT數(shù)據(jù)中轉(zhuǎn)信息。在Web部分則采用Django和BootStrap兩種架構(gòu),以更好地適應(yīng)快速部署和應(yīng)用服務(wù)擴(kuò)展升級(jí)。
(二)遠(yuǎn)程升級(jí)終端應(yīng)用服務(wù)框架設(shè)計(jì)MDM-IoT集成遠(yuǎn)程應(yīng)用升級(jí)服務(wù),對(duì)遠(yuǎn)程可控的物聯(lián)網(wǎng)設(shè)備進(jìn)行應(yīng)用升級(jí),并采用反向追蹤算法,查找設(shè)備fd并下發(fā)更新指令,完成設(shè)備自動(dòng)升級(jí)。主要包括有:云端追蹤終端服務(wù)架構(gòu)、云端升級(jí)終端服務(wù)架構(gòu)。
(三)云端算法服務(wù)器算法注冊(cè)更新設(shè)計(jì)MDM-IoT集成算法注冊(cè)接口,采用Kuberbetes平臺(tái)管理算法服務(wù)器數(shù)據(jù)流,用戶可以根據(jù)自己的算法文件進(jìn)行上傳綁定,實(shí)現(xiàn)大數(shù)據(jù)下的訓(xùn)練模擬。
五、 結(jié)語
綜上所述,隨著物聯(lián)網(wǎng)的快速發(fā)展,要進(jìn)行大數(shù)據(jù)服務(wù)器網(wǎng)絡(luò)架構(gòu)和算法服務(wù)器架構(gòu)的設(shè)計(jì),實(shí)現(xiàn)智能硬件與云端技術(shù)的一體化融合,通過將物聯(lián)網(wǎng)MDM-IoT中間件技術(shù)與智能硬件相對(duì)接,并配合云端算法服務(wù)器的接入,提高系統(tǒng)的可擴(kuò)展性和安全穩(wěn)定性,擺脫傳統(tǒng)物聯(lián)網(wǎng)在本地的局限性,使整套物聯(lián)網(wǎng)架構(gòu)更加具有生命力。
參考文獻(xiàn):
[1]聶祥.軟件定義物聯(lián)網(wǎng)分布式控制機(jī)制研究[D].長(zhǎng)沙:湖南大學(xué),2019.
[2]張衡.藍(lán)鴿校園版物聯(lián)網(wǎng)管控軟件交互設(shè)計(jì)研究與實(shí)踐[D].長(zhǎng)沙:湖南大學(xué),2019.
作者簡(jiǎn)介:王練練,中博信息技術(shù)研究院有限工程。