System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及電力物聯網,具體涉及一種基于網絡連接定期探測的系統負載均衡方法及系統。
技術介紹
1、電力物聯網中的智能終端設備(終端)和邊緣物聯代理設備(邊設備)分別具備對數據的采集和處理功能。終端對業務數據進行定期采集后,會將數據上報給邊設備進行統一處理,并經由邊設備上報給云端的物聯網平臺做進一步傳輸或處理。電力物聯網場景中設備與平臺之間的連接關系大致如圖1所示,由下而上,其中不同類型終端的數據采集頻率和采集報文大小均有差異;每個邊設備下連接的終端數量是不固定的;邊設備通過連接單元接入物聯網平臺,由于設備量級大,連接單元往往以集群方式部署。每個連接單元服務內部都融合了物聯網協議代理組件,例如,邊設備支持以mqtt協議方式接入,則連接單元中就需要集成mqtt協議代理組件。
2、由于每個連接單元上接入的設備數量和類型存在差異,會導致各連接單元間的數據傳輸壓力大小分配不均衡的問題。從整體來看,若某個連接單元上接入設備量過少,會導致資源空閑和浪費;若某個連接單元上接入設備量過大,可能會導致物聯網協議代理組件運行異常,進而影響業務正常運行。針對此問題,目前常見的解決辦法是使用輪詢算法和最小連接算法等。但輪詢算法無法識別設備斷連和重連的情況,如果某個連接單元上的設備經常出現斷開,這些設備重連時則會以輪詢的方式在所有連接單元上進行平均分配,原連接單元上的設備量會隨著這種情況出現而持續下降;最小連接算法則是單純地將設備連接量的多少作為業務負載衡量指標,顯然不使用于上述電力物聯網場景。
3、因此,在電力物聯網海量設備連接
技術實現思路
1、專利技術目的:本專利技術的目的是提供一種基于網絡連接定期探測的系統負載均衡方法及系統,通過定期探測和統計設備網絡連接socket緩沖區中待處理內容大小,實現業務壓力在連接單元服務實例間的動態負載均衡,解決
技術介紹
中存在的問題。
2、技術方案:本專利技術所述的一種基于網絡連接定期探測的系統負載均衡方法,包括以下步驟:
3、(1)獲取實際的業務負載壓力作為分配指標;
4、(2)獲取目標集群中的連接單元實例數量、設置歷史負載系數和實時負載系數并設定一個優先級調整周期;
5、(3)計算歷史優先級;
6、(4)計算實時優先級;
7、(5)計算綜合優先級并進行分配連接;
8、(6)重復步驟(3)-步驟(5),直至業務負載水平在實例間相對均衡。
9、進一步的,步驟(2)具體如下:獲取目標集群中的連接單元實例數量t,設置歷史負載系數α和實時負載系數β;其中,α,β∈[0,1],α+β=1并設定一個優先級調整周期p;在初始周期p0內,設每個實例上都沒有連接,實例優先級都設置為1。
10、進一步的,步驟(3)具體如下:在每個周期pi,i≥1中,對于每個連接單元實例在每間隔時間i計算一次其承載網絡連接對應所有socket接收緩沖區中待處理數據量大小之和dj,其中待周期pi結束時,計算本輪所有dj的平均值daverage:
11、
12、對所有實例的daverage進行排序,daverage越小代表實例繁忙度越低,則其歷史優先級設置得越高;歷史優先級取值范圍為[1,t],數字越小優先級越高。
13、進一步的,步驟(4)具體如下:在下個周期pi+1開始,新的連接請求到達后,及進行連接分配前,對于每個實例計算一次其當前承載網絡連接對應socket接收緩沖區中待處理數據量大小之和d;與步驟2計算方法一致,對每個實例的d值進行排序,d越小,實時優先級越高,其取值范圍為[1,t]。
14、進一步的,步驟(5)綜合優先級具體如下:
15、設lh表示歷史優先級,ln表示實時優先級,則服務實例的綜合優先級lc的公式如下:
16、lc=α*lh+β*ln。
17、進一步的,步驟(5)中,將連接依次分配給當前綜合優先級最高的線程;其中,lc的值越小,代表綜合優先級越高。
18、本專利技術所述的一種基于網絡連接定期探測的系統負載均衡系統,包括:
19、分配指標模塊:用于獲取實際的業務負載壓力作為分配指標;
20、初始化模塊:用于獲取目標集群中的連接單元實例數量、設置歷史負載系數和實時負載系數并設定一個優先級調整周期;
21、歷史優先級模塊:用于計算歷史優先級;
22、實時優先級模塊:用于計算實時優先級;
23、綜合優先級模塊:用于計算綜合優先級并進行分配連接;
24、迭代模塊:用于重復計算歷史優先級模塊、實時優先級模塊、綜合優先級模塊,直至業務負載水平在實例間相對均衡。
25、本專利技術所述的一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述計算機程序被加載至處理器時實現任一項所述的一種基于網絡連接定期探測的系統負載均衡方法。
26、本專利技術所述的一種存儲介質,所述存儲介質存儲有計算機程序,所述計算機程序被處理器執行時實現任一項所述的一種基于網絡連接定期探測的系統負載均衡方法。
27、有益效果:與現有技術相比,本專利技術具有如下顯著優點:首先,本專利技術是以網絡連接socket中的待處理數據量,即系統的真實負載情況作為衡量指標,可以克服最小連接算法的缺點,實現實際意義上的業務負載均衡。其次,本專利技術計算業務負載時同時考慮了系統當前運行情況和過去一段時間內的歷史運行情況,可以盡力避免系統壓力曲線上波峰或波谷對負載均衡結果產生的誤差影響。最后,本專利技術采用定期網絡探測方式實現負載情況的收集,具有高效、準確的優點,適合設備/網絡連接量較大的應用場景。
本文檔來自技高網...【技術保護點】
1.一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,包括以下步驟:
2.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(2)具體如下:獲取目標集群中的連接單元實例數量T,設置歷史負載系數α和實時負載系數β;其中,α,β∈[0,1],α+β=1并設定一個優先級調整周期P;在初始周期P0內,設每個實例上都沒有連接,實例優先級都設置為1。
3.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(3)具體如下:在每個周期Pi,i≥1中,對于每個連接單元實例在每間隔時間I計算一次其承載網絡連接對應所有socket接收緩沖區中待處理數據量大小之和Dj,其中待周期Pi結束時,計算本輪所有Dj的平均值Daverage:
4.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(4)具體如下:在下個周期Pi+1開始,新的連接請求到達后,及進行連接分配前,對于每個實例計算一次其當前承載網絡連接對應socket接收緩沖區中待處理數據量大小之和D;與步驟2計算方法一致,
5.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(5)綜合優先級具體如下:
6.根據權利要求5所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(5)中,將連接依次分配給當前綜合優先級最高的線程;其中,Lc的值越小,代表綜合優先級越高。
7.一種基于網絡連接定期探測的系統負載均衡系統,其特征在于,包括:
8.一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述計算機程序被加載至處理器時實現根據權利要求1-6任一項所述的一種基于網絡連接定期探測的系統負載均衡方法。
9.一種存儲介質,所述存儲介質存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現根據權利要求1-6任一項所述的一種基于網絡連接定期探測的系統負載均衡方法。
...【技術特征摘要】
1.一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,包括以下步驟:
2.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(2)具體如下:獲取目標集群中的連接單元實例數量t,設置歷史負載系數α和實時負載系數β;其中,α,β∈[0,1],α+β=1并設定一個優先級調整周期p;在初始周期p0內,設每個實例上都沒有連接,實例優先級都設置為1。
3.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(3)具體如下:在每個周期pi,i≥1中,對于每個連接單元實例在每間隔時間i計算一次其承載網絡連接對應所有socket接收緩沖區中待處理數據量大小之和dj,其中待周期pi結束時,計算本輪所有dj的平均值daverage:
4.根據權利要求1所述的一種基于網絡連接定期探測的系統負載均衡方法,其特征在于,步驟(4)具體如下:在下個周期pi+1開始,新的連接請求到達后,及進行連接分配前,對于每個實例計算一次其當前承載網絡連接對應soc...
【專利技術屬性】
技術研發人員:劉琛,侯繼鑫,喬柱,劉慶,王文彬,范迎,延毓,張浩奇,吳子棟,孟婕,徐明,孫雨楠,于殿君,鄭智星,
申請(專利權)人:國電南瑞科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。