国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

百萬級物聯(lián)網(wǎng)軟件平臺系統(tǒng)架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)

2019-01-10 02:05談榮強(qiáng)吳森
物聯(lián)網(wǎng)技術(shù) 2019年12期
關(guān)鍵詞:物聯(lián)網(wǎng)

談榮強(qiáng) 吳森

摘 要:“十三五”規(guī)劃重點(diǎn)項(xiàng)目指出了建設(shè)物聯(lián)網(wǎng)應(yīng)用基礎(chǔ)設(shè)施和服務(wù)平臺,在此基礎(chǔ)上各大物聯(lián)網(wǎng)平臺廠商推出自己的產(chǎn)品,如阿里云物聯(lián)網(wǎng)平臺、中國移動OneNET平臺、中國電信Wing平臺等。同樣,電動汽車產(chǎn)業(yè)的發(fā)展推動著共享充電樁需求的急劇增速,文中以共享充電樁物聯(lián)網(wǎng)軟件平臺架構(gòu)建設(shè)思路為依托,提出一種物聯(lián)網(wǎng)軟件平臺系統(tǒng)架構(gòu)設(shè)計(jì)方案。

關(guān)鍵詞:物聯(lián)網(wǎng);軟件架構(gòu);平臺架構(gòu);共享充電樁;分布式架構(gòu);雙向異步通信

中圖分類號:TP39文獻(xiàn)標(biāo)識碼:A文章編號:2095-1302(2019)12-0-03

0 引 言

物聯(lián)網(wǎng)實(shí)現(xiàn)了物質(zhì)世界的數(shù)字化,以互聯(lián)網(wǎng)為基礎(chǔ),結(jié)合通信技術(shù)與傳感器達(dá)到感知萬物的能力。物聯(lián)網(wǎng)具有數(shù)量龐大、通信頻繁、實(shí)時(shí)性高、海量存儲等特點(diǎn),傳統(tǒng)軟件技術(shù)無法滿足物聯(lián)網(wǎng)設(shè)備的接入要求,需采用新一代信息技術(shù),如云計(jì)算、大數(shù)據(jù)、分布式等技術(shù)手段,將單機(jī)無法承載的海量通信接入和海量數(shù)據(jù)存儲分散,從而滿足物聯(lián)網(wǎng)應(yīng)用的要求。共享充電樁行業(yè)伴隨新能源汽車產(chǎn)業(yè)的發(fā)展而快速崛起,2015年出臺的《關(guān)于加快電動汽車充電基礎(chǔ)設(shè)施建設(shè)的指導(dǎo)意見》使共享充電樁行業(yè)迎來發(fā)展的機(jī)會。大量充電樁設(shè)備的接入對軟件系統(tǒng)平臺提出了更高的要求,本文基于共享充電樁軟件系統(tǒng)平臺,設(shè)計(jì)出一套適合物聯(lián)網(wǎng)設(shè)備接入的通用型物聯(lián)網(wǎng)軟件系統(tǒng)平臺架構(gòu),為物聯(lián)網(wǎng)平臺建設(shè)提供解決方案。

1 總體架構(gòu)設(shè)計(jì)

系統(tǒng)平臺主要由充電樁物理感知層、網(wǎng)絡(luò)接入層、網(wǎng)絡(luò)通信層、業(yè)務(wù)處理層、應(yīng)用層五個(gè)層次組成,架構(gòu)如圖1所示。

在充電樁物理感知層,電動汽車首先通過汽車自身的電池管理系統(tǒng)與充電樁CAN總線進(jìn)行感知與交互,包括充電槍連接狀態(tài)感知、BMS運(yùn)行狀態(tài)感知、電動車充電電量感知等,電動汽車將自身相關(guān)狀態(tài)上報(bào)到充電樁,充電樁根據(jù)狀態(tài)做出對應(yīng)的處理。例如,充電樁感知到電動汽車處于插槍狀態(tài)時(shí),充電樁生成插槍狀態(tài)的報(bào)文并發(fā)送到軟件管理后臺。

在網(wǎng)絡(luò)接入層,以物聯(lián)網(wǎng)卡為基礎(chǔ),TCP/IP協(xié)議作為網(wǎng)絡(luò)傳輸協(xié)議。充電樁通過外部或內(nèi)部感知各種設(shè)備的連接及運(yùn)行狀態(tài),根據(jù)通信報(bào)文協(xié)議生成對應(yīng)的狀態(tài)報(bào)文。報(bào)文經(jīng)物聯(lián)網(wǎng)卡以網(wǎng)絡(luò)傳輸?shù)姆绞絺鬏數(shù)杰浖芾砗笈_。

在網(wǎng)絡(luò)通信層,軟件管理后臺與充電樁之間建立TCP Socket通信連接。由充電樁發(fā)起Socket通信連接請求,首先經(jīng)過負(fù)載均衡服務(wù)器對通信連接服務(wù)器進(jìn)行負(fù)載計(jì)算,選擇其中一個(gè)通信服務(wù)器與充電樁完成Socket連接,并將充電樁注冊信息存儲在分布式緩存系統(tǒng)中。通信服務(wù)器負(fù)責(zé)維持Socket通信狀態(tài),實(shí)現(xiàn)與充電樁之間的雙工通信。

在業(yè)務(wù)處理層,網(wǎng)絡(luò)通信層的通信服務(wù)器經(jīng)由分布式消息隊(duì)列系統(tǒng)發(fā)送消息到集群業(yè)務(wù)處理服務(wù)器,集群業(yè)務(wù)處理服務(wù)器根據(jù)自身負(fù)載情況選擇是否消費(fèi)隊(duì)列消息。業(yè)務(wù)處理服務(wù)器根據(jù)消息內(nèi)容判斷業(yè)務(wù)類型及處理方式,并將數(shù)據(jù)及時(shí)存入分布式數(shù)據(jù)庫中(如HBase,MongoDB)。業(yè)務(wù)處理服務(wù)器處理完消息后從分布式緩存系統(tǒng)中獲取到負(fù)責(zé)對應(yīng)充電樁Socket通信連接的通信服務(wù)器,并向該通信服務(wù)器專屬隊(duì)列通道發(fā)送回應(yīng)消息,從而實(shí)現(xiàn)與充電樁之間異步可靠的雙向通信。

在應(yīng)用層,各種相關(guān)應(yīng)用與業(yè)務(wù)處理服務(wù)器之間以Restful接口進(jìn)行無狀態(tài)通信。應(yīng)用可通過業(yè)務(wù)處理服務(wù)器對外開放的接口,實(shí)現(xiàn)向充電樁發(fā)送指令以及接收充電樁傳送過來的消息,系統(tǒng)也可實(shí)現(xiàn)各種定制化功能,如APP掃碼充電、刷卡充電等。

2 負(fù)載均衡調(diào)度

常用的負(fù)載均衡調(diào)度算法主要有輪詢、最小連接、散列等,考慮到不同服務(wù)器的性能、網(wǎng)絡(luò)環(huán)境、物理?xiàng)l件等因素,可在這些算法基礎(chǔ)上做相應(yīng)加權(quán),從而達(dá)到負(fù)載均衡的目的。整個(gè)系統(tǒng)平臺在Socket通信服務(wù)、隊(duì)列消費(fèi)、Restful接口服務(wù)部分都實(shí)現(xiàn)了負(fù)載均衡,需要根據(jù)具體實(shí)際情況選擇合適的調(diào)度算法。

在通信服務(wù)器和Restful接口服務(wù)層,通??蛇x擇加權(quán)輪詢或加權(quán)最小連接的方式實(shí)現(xiàn)。具體算法如下。

(1)加權(quán)輪詢

假設(shè)有一組服務(wù)器S,服務(wù)器數(shù)量為n,則:

指定一個(gè)指示變量i表示上一次選擇的服務(wù)器,初始值為-1,指示變量w為當(dāng)前調(diào)度的權(quán)值,則服務(wù)器i的權(quán)值為Wi,則:

Wmax=max(W0, W1, W2, ..., Wn-1),表示所有服務(wù)器集合的最大權(quán)值;

Gmax=(W0, W1, W2, ..., Wn-1),表示所有服務(wù)器集合的權(quán)值的最大公約數(shù)。

當(dāng)一次請求進(jìn)入時(shí),執(zhí)行如下:

while (true) {

i= (i+1) mod n;

if (i == 0) {

w = w - Gmax;

if (w<= 0) {

w = Wmax;

if (w == 0)

return NULL;

}

}

if (Wi>= w)

return Si;

}

(2)加權(quán)最小連接

假設(shè)有一組服務(wù)器S,服務(wù)器數(shù)量為n,則:

S={S0, S1, S2, ..., Sn-1}

指定一個(gè)指示變量i,指示變量Ci為服務(wù)器Si的當(dāng)前連接數(shù),則服務(wù)器i的權(quán)值為Wi,則:

表示所有服務(wù)器當(dāng)前連接數(shù)總和。

當(dāng)一次請求進(jìn)入時(shí),執(zhí)行如下:

for (m = 0;m < n; m++) {

if (Wm> 0) {

for (i = m+1; i < n; i++) {

if (Cm*Wi>Ci*Wm)

m = i;

}

return Sm;

}

}

return NULL;

在業(yè)務(wù)處理層,每個(gè)業(yè)務(wù)處理服務(wù)器的消費(fèi)能力不一致,任務(wù)的處理時(shí)間也會存在差異,輪詢的方式導(dǎo)致消費(fèi)能力不足的服務(wù)器無法達(dá)到預(yù)期效果,消息不能及時(shí)處理。本文推薦使用公平分發(fā)調(diào)度方式,使消息都可得到正確的處理及反饋。具體算法如下。

公平分發(fā):

假設(shè)有一組服務(wù)器S,服務(wù)器數(shù)量為n,則:

S={S0, S1, S2, ..., Sn-1}

指定一個(gè)指示變量i,初始值為-1,初始狀態(tài)下空閑服務(wù)器Sempty={S0, S1, S2, ..., Sn-1},當(dāng)隊(duì)列中產(chǎn)生一條消息時(shí),執(zhí)行如下:

while (true) {

i= (i+ 1) mod n;

if(Si∈Sempty){

Sempty remove Si;

return Si;

}

}

當(dāng)消費(fèi)服務(wù)器完成消息消費(fèi)時(shí),執(zhí)行如下:

Sempty add Si;

3 平臺優(yōu)勢與特點(diǎn)

(1)分布式架構(gòu)。平臺整體采用分布式架構(gòu)設(shè)計(jì)方案,支持各個(gè)節(jié)點(diǎn)的單一部署與集群部署,伸縮性強(qiáng),從而避免了單點(diǎn)故障問題。

(2)服務(wù)粒度細(xì)。整個(gè)系統(tǒng)平臺劃分為幾個(gè)層次,不是大而全的系統(tǒng)架構(gòu),更偏向微服務(wù)架構(gòu)方案,每個(gè)服務(wù)負(fù)責(zé)具體單一的業(yè)務(wù)方向,系統(tǒng)維護(hù)更加簡單。

(3)跨平臺通信。平臺節(jié)點(diǎn)支持跨平臺通信,不限制平臺與開發(fā)語言,對外應(yīng)用服務(wù)接口采用Restful,協(xié)議友好,具備平臺無關(guān)性,使用簡單。

4 結(jié) 語

本文設(shè)計(jì)了基于分布式架構(gòu)的物聯(lián)網(wǎng)應(yīng)用基礎(chǔ)設(shè)施和服務(wù)平臺,解決了傳統(tǒng)單體系統(tǒng)工程架構(gòu)工程量大、維護(hù)復(fù)雜等問題。該系統(tǒng)平臺架構(gòu)方案能夠很好地解決傳統(tǒng)單體系統(tǒng)工程的問題,在架構(gòu)設(shè)計(jì)方面充分考慮不同節(jié)點(diǎn)能最大支撐的負(fù)載量,支持服務(wù)水平擴(kuò)展,方便根據(jù)不同節(jié)點(diǎn)自身情況選擇合適的硬件以及硬件數(shù)量。通信服務(wù)與業(yè)務(wù)服務(wù)之間采用分布式隊(duì)列的方式實(shí)現(xiàn)服務(wù)間的通信與消息傳遞,從而達(dá)到消息的異步傳遞與處理,保障通信服務(wù)的高可用。分布式緩存解決了業(yè)務(wù)服務(wù)與通信服務(wù)之間的消息通信,保障消息的雙向異步通信。通過該系統(tǒng)平臺的架構(gòu)設(shè)計(jì)方案,緩解了現(xiàn)有物聯(lián)網(wǎng)軟件平臺負(fù)載量低、性能不高的情況,為百萬級物聯(lián)網(wǎng)軟件平臺建設(shè)提供了思路。

參 考 文 獻(xiàn)

[1]楊世敬.基于智慧路燈的智慧城市系統(tǒng)研究[J].科技風(fēng),2019(11):86.

[2]吳振宇.基于Web的物聯(lián)網(wǎng)應(yīng)用體系架構(gòu)和關(guān)鍵技術(shù)研究[D].北京:北京郵電大學(xué),2013.

[3]屈鋼,鄧健青,韓云路.Linux集群技術(shù)研究[J].計(jì)算機(jī)應(yīng)用研究,2005(5):100-101.

[4]劉博偉,黃瑞章.基于HBase的金融時(shí)序數(shù)據(jù)存儲系統(tǒng)[J].中國科技論文,2016,11(20):2387-2392.

[5]楊揚(yáng),田茂,高士木,等.基于Netty的城市智慧路燈管理系統(tǒng)[J].物聯(lián)網(wǎng)技術(shù),2018,8(4):84-86.

[6]陳強(qiáng),武佳佳.基于Netty高并發(fā)物聯(lián)網(wǎng)服務(wù)器研究與設(shè)計(jì)[J].電子技術(shù)與軟件工程,2018(7):34-35.

[7]佘鵬.LVS集群加權(quán)最小連接調(diào)度算法的研究[J].計(jì)算機(jī)與數(shù)字工程,2019,47(4):794-798.

[8]王亮,高曉佳,王宏國,等.基于LVS的大規(guī)模網(wǎng)絡(luò)負(fù)載均衡技術(shù)研究[J].科技傳播,2018,10(23):115-117.

[9]馬巍,武欣嶸,鄭翔,等.Rabbit MQ在實(shí)時(shí)監(jiān)控系統(tǒng)中的應(yīng)用[J].軍事通信技術(shù),2017,38(1):82-85.

[10]楊博雄,倪玉華,劉琨,等. 現(xiàn)代物聯(lián)網(wǎng)體系架構(gòu)中核心技術(shù)標(biāo)準(zhǔn)及其發(fā)展應(yīng)用研究[J].物聯(lián)網(wǎng)技術(shù),2013,3(1):71-76.

猜你喜歡
物聯(lián)網(wǎng)
基于無線組網(wǎng)的智慧公交站點(diǎn)信息系統(tǒng)研究與實(shí)踐
基于LABVIEW的溫室管理系統(tǒng)的研究與設(shè)計(jì)
論智能油田的發(fā)展趨勢及必要性
中國或成“物聯(lián)網(wǎng)”領(lǐng)軍者