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

?

基于改進(jìn)DRF算法的農(nóng)業(yè)微服務(wù)負(fù)載均衡

2020-12-09 05:31馬志宇吳穎夏川劉飛吳云志樂毅張友華
江蘇農(nóng)業(yè)學(xué)報 2020年5期
關(guān)鍵詞:負(fù)載均衡微服務(wù)智慧農(nóng)業(yè)

馬志宇 吳穎 夏川 劉飛 吳云志 樂毅 張友華

摘要:微服務(wù)作為一種新型的互聯(lián)網(wǎng)平臺架構(gòu)設(shè)計,在現(xiàn)代智慧農(nóng)業(yè)中具有細(xì)粒度、低耦合度和高可靠性的優(yōu)勢。在負(fù)載均衡智慧農(nóng)業(yè)微服務(wù)領(lǐng)域,目前針對復(fù)雜農(nóng)業(yè)環(huán)境下的特定微服務(wù)負(fù)載均衡方案的研究較少,而高性能微服務(wù)負(fù)載均衡策略能夠有效提升農(nóng)業(yè)物聯(lián)網(wǎng)的網(wǎng)絡(luò)體驗和性能指標(biāo)。本研究提出一種改進(jìn)的主導(dǎo)資源公平分配(Dominant resource fairness, DRF)算法,通過引入多角度的性能測評因素,著力于提升在智慧農(nóng)業(yè)平臺的微服務(wù)化下實現(xiàn)服務(wù)高效負(fù)載均衡的性能。經(jīng)測試,本研究提出的算法相比于目前流行的微服務(wù)平臺自帶的負(fù)載均衡算法在響應(yīng)時間、吞吐率和穩(wěn)定性方面有明顯提升,實現(xiàn)了各個農(nóng)業(yè)生產(chǎn)單位物聯(lián)網(wǎng)設(shè)備和數(shù)據(jù)終端以低耦合度的方式接入系統(tǒng)平臺,同時實現(xiàn)高效地利用、治理和規(guī)范化來自各個數(shù)據(jù)源的農(nóng)情數(shù)據(jù),具有較高的實用價值。

關(guān)鍵詞:負(fù)載均衡;微服務(wù);物聯(lián)網(wǎng);智慧農(nóng)業(yè);主導(dǎo)資源公平分配(DRF)算法;

中圖分類號:F303.3文獻(xiàn)標(biāo)識碼:A文章編號:1000-4440(2020)05-1298-07

Abstract:Microservice is a new type of architecture design for internet platform, with the advantages of fine granularity, low coupling degree and high reliability in modern smart agriculture. In the field of load balancing of smart agricultural microservices, there are few researches on load balancing schemes of specific microservice under complex agricultural environments in the current, and load balancing strategies of efficient microservice can effectively improve the network experience and performance index of agricultural internet of things (IOT). This paper proposed an improved dominant resource fairness (DRF) algorithm and focused on improving the performance of service efficient load balancing under micro-servitization of smart agriculture platform by introducing multi-angle performance evaluation factors. After testing, the algorithm proposed in this paper showed significant improvement in response time, throughput and stability compared with the load balancing algorithms provided by current popular microservice platforms. IOT equipment and data terminal of each agricultural production unit can be connected to the system platform in a mode of low coupling degree, while agricultural data from various data sources can be effectively utilized, managed and standardized. The algorithm proposed in this paper shows good practical value.

Key words:load balancing;microservices;internet of things;smart agriculture;dominant resource fairness (DRF) algorithm

近年來,市場上的智慧農(nóng)業(yè)平臺大都采用單體架構(gòu)模式(圖1)實現(xiàn),各個業(yè)務(wù)邏輯往往互相交叉、依賴,在開發(fā)中一個模塊的故障很可能造成整個系統(tǒng)的癱瘓[1]。

傳統(tǒng)的服務(wù)端負(fù)載均衡方法是通過Nginx之類的工具在服務(wù)端對客戶端請求進(jìn)行轉(zhuǎn)發(fā)從而實現(xiàn)的,由于所有數(shù)據(jù)均需要訪問同一地點的Nginx服務(wù),對于負(fù)載均衡工具本身而言,各地農(nóng)場大量的并發(fā)請求會形成聚集從而形成性能的瓶頸[2]。對于分散在全國各地的用戶來說,所有請求都需要首先訪問單一節(jié)點的負(fù)載均衡工具,其中網(wǎng)絡(luò)延遲和數(shù)據(jù)多次轉(zhuǎn)發(fā)形成的丟包率使得這種負(fù)載均衡方式的運行效果不理想。

面對大型農(nóng)業(yè)生產(chǎn)集團(tuán)遍布各地的一線生產(chǎn)單元,不同地域的物聯(lián)網(wǎng)設(shè)備因各自網(wǎng)絡(luò)環(huán)境的不同,對單點式服務(wù)器的訪問性能必然有相當(dāng)大的差距。如何實現(xiàn)農(nóng)業(yè)數(shù)據(jù)的穩(wěn)定高效傳送成為亟需解決的問題。微服務(wù)(Microservice)最早由Fowler與Lewis[3]于2014年共同提出,微服務(wù)作為一種架構(gòu)模式,其倡導(dǎo)將系統(tǒng)內(nèi)各功能解耦到獨立的服務(wù)中并在不同的進(jìn)程中運行。不同服務(wù)與業(yè)務(wù)之間可以采用不同的編程語言與數(shù)據(jù)存儲技術(shù)[4],大大解決了隨著單一系統(tǒng)業(yè)務(wù)邏輯復(fù)雜度增長而帶來的擴(kuò)展性、穩(wěn)定性問題[5]。

在具體農(nóng)業(yè)生產(chǎn)場景中,物聯(lián)網(wǎng)傳感器數(shù)據(jù)源、農(nóng)業(yè)監(jiān)控攝像頭在大型農(nóng)業(yè)生產(chǎn)主體中往往是離散分布在不同農(nóng)場甚至不同城市中[6],大量傳感器和網(wǎng)關(guān)會頻繁地與服務(wù)器進(jìn)行實時通信[7],微服務(wù)客戶端負(fù)載均衡技術(shù)則可以實現(xiàn)由各個用戶根據(jù)自身網(wǎng)絡(luò)情況自主判斷選擇對其網(wǎng)絡(luò)環(huán)境最佳的服務(wù)器進(jìn)行通信,從而優(yōu)化不同地域用戶的網(wǎng)絡(luò)感知體驗。

對一線用戶而言,在農(nóng)業(yè)生產(chǎn)的全過程中很難使用同一個廠商的產(chǎn)品,單體架構(gòu)的農(nóng)業(yè)系統(tǒng)很難做到及時與不同品牌的農(nóng)業(yè)設(shè)備兼容,而微服務(wù)的設(shè)計思想同時可以實現(xiàn)將農(nóng)業(yè)生產(chǎn)全程物聯(lián)網(wǎng)設(shè)備和數(shù)據(jù)終端統(tǒng)一接入、共享管理[8]。

對于微服務(wù)的負(fù)載均衡而言,其算法邏輯在客戶端軟件中執(zhí)行,客戶端首先在服務(wù)注冊中心訂閱消息,注冊中心向客戶端定時推送服務(wù)列表,客戶端實時根據(jù)最新的服務(wù)列表執(zhí)行負(fù)載均衡算法[9]。

1研究框架

針對目前智慧農(nóng)業(yè)信息系統(tǒng)和微服務(wù)均衡方案存在的問題,本研究設(shè)計了一套基于負(fù)載均衡改進(jìn)主導(dǎo)資源公平分配(DRF)算法的智慧農(nóng)業(yè)開放平臺。本平臺以Spring Cloud微服務(wù)框架為基礎(chǔ),結(jié)合了Eureka服務(wù)注冊中心、Ribbon負(fù)載均衡工具,實現(xiàn)了一套基于客戶端的高性能農(nóng)業(yè)微服務(wù)負(fù)載均衡解決方案。平臺架構(gòu)見圖2。

通過構(gòu)建多個微服務(wù)取代傳統(tǒng)MVC[模型(Model, M)-視圖(View, V)-控制器(Controller, C)]設(shè)計模式的Model與View層,本研究設(shè)計了復(fù)用性高、與平臺運行密切相關(guān)的數(shù)據(jù)采集處理服務(wù)、用戶管理服務(wù)、平臺監(jiān)控服務(wù)、農(nóng)業(yè)物聯(lián)網(wǎng)服務(wù)作為系統(tǒng)的核心微服務(wù)。針對農(nóng)、林、牧、漁不同行業(yè)的專有需求,軟件開發(fā)商和開發(fā)者可以以微服務(wù)的形式獨立開發(fā)后與平臺直接對接。

Eureka是一個服務(wù)發(fā)現(xiàn)技術(shù),可實現(xiàn)在服務(wù)中的負(fù)載均衡與故障轉(zhuǎn)移,每個服務(wù)在啟動時會主動向服務(wù)注冊中心注冊[10],服務(wù)注冊中心將會接收到此服務(wù)所在服務(wù)器的主機號、端口號和通信協(xié)議等信息。當(dāng)平臺中的各個應(yīng)用(消費者)需要調(diào)用微服務(wù)時,首先向服務(wù)注冊中心訂閱該微服務(wù),同時注冊中心會返回該服務(wù)的地址給消費者。與此同時,各個微服務(wù)會定期向注冊中心發(fā)送心跳包以報告自己的服務(wù)狀態(tài)。

Ribbon是一個基于客戶端的負(fù)載均衡工具,客戶端的所有請求將通過Ribbon定時從服務(wù)注冊中心拉取服務(wù)列表[10],經(jīng)過負(fù)載均衡算法選擇節(jié)點后轉(zhuǎn)發(fā)給服務(wù)器,該工具自帶數(shù)種負(fù)載均衡方案,但都普遍缺乏智慧農(nóng)業(yè)以及農(nóng)業(yè)物聯(lián)網(wǎng)環(huán)境下的針對性?;诒狙芯刻岢龅乃惴?,通過修改其部分源碼,完成了在Ribbon下的改進(jìn)DRF算法。

2基于改進(jìn)DRF算法的微服務(wù)負(fù)載均衡算法設(shè)計

針對農(nóng)業(yè)環(huán)境下不同生產(chǎn)單位[如分散在全國各地、使用不同網(wǎng)絡(luò)接入方式的農(nóng)場數(shù)據(jù)終端、移動個人數(shù)字助理(PDA)以及網(wǎng)關(guān)傳感器]訪問單一節(jié)點的服務(wù)可能因為不同因素影響服務(wù)的可靠性,因此負(fù)載均衡算法需要充分考慮到延遲時間、不同節(jié)點當(dāng)前負(fù)載、連通率等指標(biāo),確保不同地區(qū)、網(wǎng)絡(luò)環(huán)境和接入方式的用戶能夠獲得最佳體驗。

2.1評價因素的建立

建立負(fù)載均衡評價因素集合(X),

令FailureCount=失敗請求次數(shù),

ActiveRequestsCount=當(dāng)前活躍的連接數(shù),

SuccessiveConnectionFailureCount=連續(xù)失敗的連接數(shù),

ResponseTimeStdDev=響應(yīng)時間標(biāo)準(zhǔn)差,

Latency=從客戶端到主機的延遲時間,

從而得到:

X={FailureCount,ActiveRequestsCount,

SuccessiveConnectionFailureCount,

ResponseTimeStdDev, latency}

2.2評價因素的規(guī)范化處理

評價因素體系從不同方面體現(xiàn)了各個節(jié)點的性能特征,有的指標(biāo)從正面說明總體,有的指標(biāo)相反,因此需要對數(shù)據(jù)進(jìn)行趨同化。對于不同性質(zhì)和單位的指標(biāo)不能直接計算,其不能反映不同指標(biāo)因素的共同作用結(jié)果,因此還要考慮將所有指標(biāo)對衡量結(jié)果的影響無量綱化,再進(jìn)行相應(yīng)計算才可得出正確結(jié)果[11]。為了使評價因素?zé)o量綱化與同趨化,針對5種不同的評價因素分別進(jìn)行標(biāo)準(zhǔn)化操作。

Z-score模型算法,也稱作標(biāo)準(zhǔn)分?jǐn)?shù)算法(Standard score),其計算方法為用樣本中一個數(shù)與平均數(shù)的差除以標(biāo)準(zhǔn)差,能夠真實地反映一個分?jǐn)?shù)距離平均數(shù)的相對標(biāo)準(zhǔn)距離,其被看作一個數(shù)據(jù)點的值和總體平均測量值的標(biāo)準(zhǔn)偏差[12],轉(zhuǎn)化后的每個標(biāo)準(zhǔn)分?jǐn)?shù)總分布在0的兩側(cè)。指標(biāo)實際值比平均值大的,其評價值大于0;實際值比平均值小的,其評價值小于0[13]。

2.3Delphi法資源量的確定

Delphi法(德爾菲法)由Dalkey 和 Helmer于1964年發(fā)明并首先將其應(yīng)用于軍事預(yù)測分析[14]。通過此方法可以對智慧農(nóng)業(yè)平臺內(nèi)的服務(wù)器集群和各個微服務(wù)(如數(shù)據(jù)上傳、圖像采集和流媒體傳送等業(yè)務(wù))的邏輯性能需求進(jìn)行有效的判斷。此方法采用多輪征詢背對背的通信方式征詢專家組的意見,最后構(gòu)造出可信度較強的預(yù)測意見供DRF權(quán)重算法使用。

服務(wù)器資源量(TR)、各個微服務(wù)所需資源量(N)均可采用Delphi法獲得可觀的評議結(jié)果。以各個服務(wù)器資源量(TR)的求解為例,具體步驟如下:

(1)確定各個影響因素的相對資源系數(shù)ai,i=1,2,…,n,其中n為影響因素的總個數(shù)。

(2)邀請各行業(yè)的一線開發(fā)人員、平臺管理人員和第三方農(nóng)業(yè)軟件或硬件設(shè)備開發(fā)人員對所提供服務(wù)器集群的詳細(xì)性能指標(biāo)進(jìn)行評估審閱,預(yù)先設(shè)定1個序列值ai∈{1,2,…,i},評估人員對每臺主機的評價只可非重復(fù)地使用1個序列值。征詢問卷結(jié)構(gòu)包括專家編號、服務(wù)器編號、因素編號、資源量最低值、資源量最高值、最可能資源量。

(3)統(tǒng)計分析,進(jìn)行一致性檢驗。

首先計算本次測試的應(yīng)答率(Call)=AnswerAttend

其中Answer是完成全部上報的人數(shù),Attend是調(diào)查對象的總?cè)藬?shù)。如果Call<90%則認(rèn)為本次統(tǒng)計無效,返回步驟(2)。

若應(yīng)答率符合要求,則繼續(xù)計算變異系數(shù)(CV)。

變異系數(shù)又稱離散系數(shù)、標(biāo)準(zhǔn)離差率或單位風(fēng)險,其優(yōu)勢在于作為一個無量綱量,統(tǒng)計時不需要考慮數(shù)據(jù)的平均值[15]。對于每臺服務(wù)器每種資源因素的最低、最高、最可能資源量,按照專家的打分分別統(tǒng)計其變異系數(shù)(CV):

其中σ為數(shù)據(jù)的標(biāo)準(zhǔn)差,μ為數(shù)據(jù)的平均值。如果超過40%的數(shù)據(jù)變異系數(shù)大于0.5,則將本輪全體評價結(jié)果反饋給專家,要求專家再次進(jìn)行評價,直到滿足要求為止。

(4)求出每臺服務(wù)器的資源量。

假設(shè)m個完成上報的人員進(jìn)行了k輪試驗,對第i臺服務(wù)器的第j種資源量(Rij),可由以下公式求得:

其中n為上報人員的編號,p為試驗的輪數(shù),max(anpij)為資源量最高值,min(anpij)為資源量最低值,prob(anpij)為最可能資源量。

2.4DRF權(quán)重算法的實現(xiàn)

DRF算法是一種通用的多資源分配策略,其根據(jù)主導(dǎo)資源所占的最優(yōu)份額來實現(xiàn)[16]。Ghodsi等[17]提出在分布式集群中使用DRF算法實現(xiàn)集群調(diào)度具有更好的吞吐量和公平性,F(xiàn)an等[18]在Hadoop YARN中通過DRF算法增強了對網(wǎng)絡(luò)帶寬資源的分配管理,Meskar等[19]將DRF算法引入移動邊緣計算(MEC)領(lǐng)域,實現(xiàn)了公平分配多種資源。在用戶有異質(zhì)需求的場景環(huán)境中,可以采用DRF算法實現(xiàn)多種分配因素下的資源公平分配。對于智慧農(nóng)業(yè)物聯(lián)網(wǎng)以及數(shù)據(jù)終端來說,不同業(yè)務(wù)(數(shù)值分析、數(shù)據(jù)上傳、圖像采集、流媒體傳送等)具有不同的性能需求偏好,因此需要實現(xiàn)對有不同需求的用戶在選擇節(jié)點時根據(jù)其性能特性有針對性的側(cè)重。

設(shè)各個評價因素種類為R1,R2,…,Rn,系統(tǒng)內(nèi)資源總量用向量TR=(TR1,TR2,…,TRn)來表示。對于客戶端任務(wù)Ci來說,其所需要的因素資源量由向量Ni=(CiR1,CiR2,…,CiRn)構(gòu)成。

已知客戶端任務(wù)Ci,其資源需求向量為Ni,資源總量為TR,則客戶端任務(wù)Ci的主導(dǎo)份額(MainResource)計算公式為:

對于上文2.2中的評判矩陣R和2.3中Delphi法確定的服務(wù)器資源量、各個微服務(wù)所需資源量(N),雖然已經(jīng)求得對每個服務(wù)器節(jié)點不同性能評價指標(biāo)的歸一化數(shù)據(jù),但在一線農(nóng)業(yè)應(yīng)用客戶端選擇節(jié)點的過程中,由于對于不同微服務(wù)在多資源環(huán)境中的各資源因素重要程度不一樣,故影響力也不同,所以在綜合評判時,必須給出各個因素在總評價中的重要程度,用權(quán)重集(A)來表示。

根據(jù)已求得的主導(dǎo)份額(MainResource),則權(quán)重集(A)可以表示為:

這里的12為出現(xiàn)的MainResource所在的權(quán)重位置。在每臺設(shè)備的實時性能向量中,選中主導(dǎo)份額將其乘以12,即

式中,DRFResi為加權(quán)后的實時性能向量,Resi為各個服務(wù)器的實時性能向量。

通過以上處理可以達(dá)到放大該性能指標(biāo)對最后評判標(biāo)準(zhǔn)影響的作用。

2.5負(fù)載均衡算法整體流程

步驟1:每當(dāng)微服務(wù)服務(wù)器集群節(jié)點發(fā)生變化或平臺上新增微服務(wù)時,數(shù)據(jù)終端客戶端向Eureka更新服務(wù)列表,通過Delphi法確定服務(wù)器資源量(TR)、各個微服務(wù)所需資源量(N)。

步驟2:從Eureka注冊中心拉取服務(wù)節(jié)點列表,同時新建線程,獲取客戶端到服務(wù)端的響應(yīng)延遲時間。

步驟3:通過Z-score算法計算多因素評判矩陣(R)與各個服務(wù)器的實時性能向量(Resi)。

步驟4:通過DRF算法得到客戶端業(yè)務(wù)的主導(dǎo)份額和權(quán)重集,從而得到加權(quán)后的實時性能向量(DRFResi)。

步驟5:基于加權(quán)后的實時性能向量對每個服務(wù)器的性能作出綜合評判,得到評判分?jǐn)?shù),服務(wù)器的編號用j表示,則綜合評判分?jǐn)?shù)記作:

其中rk為DRFResi中不同種類的各個資源因素,n為原因因素的種類數(shù)目。

步驟6:將服務(wù)器的綜合評判分?jǐn)?shù)按照從小到大的順序排序,選取前50%服務(wù)器,分別按照等差遞減的出現(xiàn)比例隨機選取。

步驟7:每隔5 min返回步驟2重新執(zhí)行。

3性能測試與分析

3.1試驗環(huán)境

本試驗構(gòu)建了1個智慧農(nóng)業(yè)物聯(lián)網(wǎng)服務(wù)集群來模擬農(nóng)田物聯(lián)網(wǎng)設(shè)備和數(shù)據(jù)終端向服務(wù)器上傳傳感器數(shù)據(jù)(JSON格式)的業(yè)務(wù),其中包括1個Eureka服務(wù)注冊中心和5個微服務(wù)集群。服務(wù)器的配置具體包括:

(1)Eureka注冊中心服務(wù)器:

處理器:Intel Xeon E5-2682 v4@2.5 GHz;

內(nèi)存:32 GB DDR4;

操作系統(tǒng):Windows server 2008;

地理位置:中國上海阿里云。

(2)微服務(wù)集群服務(wù)器(共5臺):

處理器:1核;

內(nèi)存:百度云,2臺為1 GiB,其余4臺為2 GiB;

操作系統(tǒng):Windows server 2008、Ubuntu 18.04;

地理位置:中國上海阿里云、中國上海騰訊云、中國廣州百度云、中國保定百度云、中國彰化谷歌云。

(3)負(fù)載發(fā)送壓力主機:

處理器:Intel Core i7-7700HQ@2.8 GHz;

內(nèi)存:32 GB DDR4;

網(wǎng)卡帶寬:1 000 Mbps;

操作系統(tǒng):Windows 10 Pro 1909。

(4)客戶端負(fù)載均衡服務(wù)主機:

處理器:Intel Pentium G4560@3.5 GHz;

內(nèi)存:4 GB DDR4;

網(wǎng)卡帶寬:1 000 Mbps;

操作系統(tǒng):Windows 10 Pro 1909。

模擬數(shù)據(jù)上傳傳感器的業(yè)務(wù)采用GET方式通過本地主機的URL(統(tǒng)一資源定位器)上傳包含多種類型數(shù)據(jù)的JSON文本,數(shù)據(jù)報文的結(jié)構(gòu)如下:

{"DataHead":{

"Date":"2020-01-01",

"Time":"20:00:00",

"FarmId":"001",

"DataType":"Rain"

},

"DataBody":{

"Temperature":"25",

"Humidity":"50",

"WindSpeed":"15",

"Light":"10",

"isRain":"False",

"Rainfall":"0"

}}

上述負(fù)載均衡邏輯使用Java語言通過繼承Ribbon中的ClientConfigEnabledRoundRobinRule類重寫了public Server choose(Object key) 方法邏輯,通過一系列試驗驗證本算法在客戶端負(fù)載均衡中的性能表現(xiàn)。

3.2試驗內(nèi)容

響應(yīng)延遲體現(xiàn)了用戶對服務(wù)性能的最直觀感受,本試驗設(shè)計基于HTTP訪問微服務(wù)模擬農(nóng)業(yè)傳感器數(shù)據(jù)終端上傳數(shù)據(jù)業(yè)務(wù),從而測試試驗過程中的平均響應(yīng)時間和吞吐量。通過將上述算法所實現(xiàn)的負(fù)載均衡邏輯與Ribbon自帶的默認(rèn)輪詢算法、高可用算法和時間權(quán)重算法進(jìn)行對比,從而比較本算法給用戶體驗帶來的影響。

3.2.1平均響應(yīng)時間測試對于不同并發(fā)量,采用LOCUST這一開源負(fù)載均衡測試工具[20]來測試平均響應(yīng)時間,其完全基于事件驅(qū)動,使用Gevent提供的非阻塞IO和Coroutine來實現(xiàn)網(wǎng)絡(luò)層的并發(fā)請求?;诓煌牟l(fā)用戶量進(jìn)行單輪周期為15 min的測試,測試結(jié)果見圖3。

3.2.2TPS(每秒事務(wù)數(shù))測試TPS是衡量系統(tǒng)性能的一個非常重要的指標(biāo)[21],事務(wù)是指客戶機向服務(wù)器發(fā)送請求直到服務(wù)器返回請求的過程。對于分布式系統(tǒng)來說,TPS反映了系統(tǒng)的整體處理能力,采用JMeter測試工具,對2種不同的負(fù)載均衡方案的TPS各進(jìn)行為期15 min的模擬農(nóng)業(yè)物聯(lián)網(wǎng)信息上傳壓力測試,結(jié)果見圖4。

3.3試驗結(jié)果分析

以上試驗結(jié)果顯示,基于改進(jìn)DRF算法的微服務(wù)動態(tài)負(fù)載均衡算法不論是在不同并發(fā)線程數(shù)的響應(yīng)時間上還是在壓力測試下的平均響應(yīng)時間方面都體現(xiàn)出了明顯的優(yōu)勢。在平均響應(yīng)時間的測試中,可以看到隨著測試時間的推移,本算法的并發(fā)連接數(shù)始終能夠保持在較高的水平,相比Ribbon自動的2種常用算法(輪詢算法和時間權(quán)重算法),由于前2種算法在內(nèi)存泄露和流回收方面的弱勢,線程數(shù)增大時平均響應(yīng)時間出現(xiàn)了較大幅度的提升,而本算法在使用JAVA語言實現(xiàn)時通過共用靜態(tài)對象、優(yōu)化代碼、阻塞任務(wù)使用多線程并發(fā)執(zhí)行、規(guī)避線程不安全代碼等設(shè)計,減少了內(nèi)存開銷,能夠在并發(fā)線程數(shù)不斷增多時體現(xiàn)出穩(wěn)定抗壓的特點。

4結(jié)語

本研究通過提出一種基于改進(jìn)DRF算法的客戶端負(fù)載均衡策略,引入多角度的性能測評因素,通過Z-Score算法將測評因素標(biāo)準(zhǔn)化,進(jìn)而結(jié)合Delphi算法計算出性能權(quán)重,從而在智慧農(nóng)業(yè)平臺的微服務(wù)化下實現(xiàn)服務(wù)高效負(fù)載均衡。通過本算法,實現(xiàn)不同地域、網(wǎng)絡(luò)環(huán)境下的各個農(nóng)業(yè)生產(chǎn)單位都可以以高性能、低耦合度和簡易的方式接入系統(tǒng)平臺,有效地提升客戶端使用微服務(wù)的并發(fā)性能、吞吐性能,從而形成更加科學(xué)的負(fù)載均衡邏輯,在未來該技術(shù)可以與5G技術(shù)相結(jié)合,從而構(gòu)建出高速農(nóng)業(yè)微服務(wù)平臺系統(tǒng)。本算法對后期研究中更多評價因素的引入和基于時間序列的流量峰值預(yù)測具有進(jìn)一步的研究空間和價值,從而使每個用戶獲得高可用性的農(nóng)業(yè)大數(shù)據(jù)和物聯(lián)網(wǎng)微服務(wù)體驗。

參考文獻(xiàn):

[1]李道亮,楊昊. 農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)研究進(jìn)展與發(fā)展趨勢分析[J].農(nóng)業(yè)機械學(xué)報,2018,49(1):1-20.

[2]李菁. 改進(jìn)快速稀疏算法的云計算資源負(fù)載均衡[J].微型電腦應(yīng)用,2019,35(10):36-38.

[3]FOWLER M, LEWIS J. Microservices[EB/OL]. (2014-03-25)[2020-03-04]. https://martinfowler.com/articles/microservices.html.

[4]辛園園,鈕俊,謝志軍,等. 微服務(wù)體系結(jié)構(gòu)實現(xiàn)框架綜述[J].計算機工程與應(yīng)用,2018,54(19):10-17.

[5]龍新征,彭一明,李若淼. 基于微服務(wù)框架的信息服務(wù)平臺[J].東南大學(xué)學(xué)報(自然科學(xué)版),2017,47(增刊1):48-52.

[6]李瑾,郭美榮,高亮亮. 農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)應(yīng)用及創(chuàng)新發(fā)展策略[J].農(nóng)業(yè)工程學(xué)報,2015,31(增刊2):200-209.

[7]王冉,徐本崇,魏瑞成,等. 基于無線傳感網(wǎng)絡(luò)的畜禽舍環(huán)境監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[J].江蘇農(nóng)業(yè)學(xué)報,2010,26(3):562-566.

[8]陳棟,吳保國,陳天恩,等. 分布式多源農(nóng)林物聯(lián)網(wǎng)感知數(shù)據(jù)共享平臺研發(fā)[J].農(nóng)業(yè)工程學(xué)報,2017,33(增刊1): 300-307.

[9]徐琛杰,周翔,彭鑫,等. 面向微服務(wù)系統(tǒng)的運行時部署優(yōu)化[J].計算機應(yīng)用與軟件,2018,35(10):85-93.

[10]辛園園,鈕俊,謝志軍,等. 微服務(wù)體系結(jié)構(gòu)實現(xiàn)框架綜述[J].計算機工程與應(yīng)用,2018,54(19): 10-17.

[11]徐浪,王青華. 描述統(tǒng)計學(xué)[J]. 成都:西南財經(jīng)大學(xué)出版社, 2001.

[12]葉小榕,邵晴. 基于Spark的大規(guī)模社交網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)原型系統(tǒng)[J].科技導(dǎo)報,2018,36(23):93-101.

[13]葉青. 國家工業(yè)現(xiàn)代化水平的實證研究——基于二次現(xiàn)代化理論的視角[J].理論與現(xiàn)代化,2016(5): 15-23.

[14]SHELTON K, HAYNES C A, CREGHAN K A. Fundamentals of Delphi research methodology[M]. IGI Global: Hershey, 2018: 233-257.

[15]程果. 基于HTTP的動態(tài)自適應(yīng)流媒體技術(shù)的研究[D].廣州:廣東工業(yè)大學(xué),2017.

[16]柯尊旺,于炯,廖彬. 適應(yīng)異構(gòu)集群的Mesos多資源調(diào)度DRF增強算法[J].計算機應(yīng)用,2016,36(5):1216-1221.

[17]GHODSI A, ZAHARIA M, HINDMAN B, et al. Dominant resource fairness: fair allocation of multiple resource types[C]// USENIX.? 8th USENIX Symposium on Networked Systems Design and Implemention. Boston, USA: USENIX, 2011:24.

[18]FAN X, LANG B, ZHOU Y, et al. Adding network bandwidth resource management to Hadoop YARN[C]// IEEE.? IEEE 2017 Seventh International Conference on Information Science and Technology. Da Nang,Vietnam: IEEE, 2017: 444-449.

[19]MESKAR E, LIANG B. Fair multi-resource allocation with external resource for mobile edge computing[C]// IEEE.? IEEE INFOCOM 2018-IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS).Honolulu, USA: IEEE, 2018: 184-189.

[20]COULSON N C, SOTIRIADIS S, BESSIS N. Adaptive microservice scaling for elastic applications[J]. IEEE Internet of Things Journal, 2020, 7(5): 4195-4202.

[21]VARGAS-SANTIAGO M, MORALES-ROSALES L, POMARES-HERNANDEZ S, et al. Autonomic web services enhanced by asynchronous checkpointing[J]. IEEE Access, 2018(6): 5538-5547.

(責(zé)任編輯:陳海霞)

猜你喜歡
負(fù)載均衡微服務(wù)智慧農(nóng)業(yè)
微信公眾平臺在醫(yī)院圖書館的應(yīng)用現(xiàn)狀調(diào)查
異構(gòu)環(huán)境下改進(jìn)的LATE調(diào)度算法
基于微信企業(yè)號的校園移動服務(wù)
從單一模式系統(tǒng)架構(gòu)往微服務(wù)架構(gòu)遷移轉(zhuǎn)化技術(shù)研究
基于負(fù)載均衡的云資源調(diào)度策略研究
北斗衛(wèi)星對智慧農(nóng)業(yè)的作用與應(yīng)用探討
延邊地區(qū)“互聯(lián)網(wǎng)+農(nóng)業(yè)”發(fā)展研究
基于物聯(lián)網(wǎng)技術(shù)的智慧農(nóng)業(yè)實施方案分析
多站點同步更新系統(tǒng)的設(shè)計
模糊理論在Ad hoc網(wǎng)絡(luò)通信領(lǐng)域的應(yīng)用