本發(fā)明涉及資源管理,尤其涉及基于服務流量預測的開源系統(tǒng)資源調(diào)度管理方法及系統(tǒng)。
背景技術:
1、隨著云計算和分布式系統(tǒng)的快速發(fā)展,開源系統(tǒng)已廣泛應用于各類互聯(lián)網(wǎng)服務和企業(yè)應用中。這些開源系統(tǒng)通常由多個服務節(jié)點組成,共同提供計算、存儲和網(wǎng)絡等資源服務。在實際運行過程中,各服務節(jié)點面臨的流量負載往往呈現(xiàn)出明顯的時間波動性和不均衡性,這對系統(tǒng)資源的高效調(diào)度和管理提出了嚴峻挑戰(zhàn)。傳統(tǒng)的資源調(diào)度管理方法主要基于靜態(tài)配置或簡單的負載均衡策略,難以適應復雜多變的服務流量環(huán)境。
2、現(xiàn)有的資源調(diào)度方法大多依賴于當前系統(tǒng)狀態(tài)進行決策,缺乏對未來流量變化的預測能力,導致系統(tǒng)在面對突發(fā)流量時反應滯后,無法提前做好資源準備,容易造成服務質量下降或資源浪費。
3、傳統(tǒng)的負載均衡算法通常采用固定權重或簡單的輪詢機制,未能充分考慮服務節(jié)點的異構性和動態(tài)變化特性,難以根據(jù)節(jié)點的實際計算能力和當前負載狀況進行精細化的資源分配,降低了系統(tǒng)整體的資源利用效率。
4、現(xiàn)有的資源調(diào)度策略往往缺乏全局優(yōu)化視角,未能同時兼顧服務響應時間和資源利用率等多維度指標,在資源分配決策過程中難以平衡系統(tǒng)性能與資源成本之間的關系,導致在高負載情況下系統(tǒng)。
技術實現(xiàn)思路
1、本發(fā)明實施例提供基于服務流量預測的開源系統(tǒng)資源調(diào)度管理方法及系統(tǒng),能夠解決現(xiàn)有技術中的問題。
2、本發(fā)明實施例的第一方面,獲取開源系統(tǒng)中各服務節(jié)點的歷史流量數(shù)據(jù),基于所述歷史流量數(shù)據(jù),構建深度神經(jīng)網(wǎng)絡模型,通過所述深度神經(jīng)網(wǎng)絡模型對各服務節(jié)點未來時間窗口內(nèi)的流量進行預測,得到預測流量數(shù)據(jù);
3、根據(jù)所述預測流量數(shù)據(jù),結合各服務節(jié)點的計算能力參數(shù),計算動態(tài)權重系數(shù);
4、實時采集開源系統(tǒng)中各服務節(jié)點的資源狀態(tài)信息,并基于所述資源狀態(tài)信息計算得到各服務節(jié)點的資源可用度指標;
5、將所述動態(tài)權重系數(shù)和所述資源可用度指標輸入至改進的蟻群算法中,其中:使用所述動態(tài)權重系數(shù)作為蟻群算法的啟發(fā)式信息,使用所述資源可用度指標作為路徑選擇的約束條件,通過迭代優(yōu)化過程生成資源分配方案,所述迭代優(yōu)化過程中的信息素更新規(guī)則基于服務響應時間和資源利用率進行動態(tài)調(diào)整;
6、根據(jù)所述資源分配方案,生成服務遷移序列和資源分配指令,按照所述服務遷移序列的順序執(zhí)行服務遷移操作,并根據(jù)所述資源分配指令調(diào)整各服務節(jié)點的資源配置。
7、通過所述深度神經(jīng)網(wǎng)絡模型對各服務節(jié)點未來時間窗口內(nèi)的流量進行預測,得到預測流量數(shù)據(jù)包括:
8、所述深度神經(jīng)網(wǎng)絡模型包括:輸入層,用于接收預處理后的訓練數(shù)據(jù);特征提取層,采用一維卷積網(wǎng)絡提取時序特征;注意力機制層,用于計算不同時間點的特征權重;長短時記憶網(wǎng)絡層,用于捕獲時序數(shù)據(jù)的長期依賴關系;全連接層,用于特征降維和組合;輸出層,輸出預測結果;
9、基于所述歷史流量數(shù)據(jù)采用滑動時間窗口方法構建訓練數(shù)據(jù),通過所述訓練數(shù)據(jù)訓練所述深度神經(jīng)網(wǎng)絡模型,使用自適應學習率的優(yōu)化算法進行模型參數(shù)更新,引入早停機制防止過擬合,并通過交叉驗證確定最優(yōu)模型參數(shù);
10、設定預測時間窗口的長度,將所述歷史流量數(shù)據(jù)輸入已訓練的深度神經(jīng)網(wǎng)絡模型,通過模型前向傳播得到未來時間窗口內(nèi)的預測流量數(shù)據(jù)。
11、所述計算動態(tài)權重系數(shù)包括:
12、將所述預測流量數(shù)據(jù)與預設流量閾值的比值作為基礎權重,結合所述基礎權重與服務節(jié)點的計算能力參數(shù)確定表征服務節(jié)點負載均衡程度的動態(tài)權重系數(shù);
13、將服務節(jié)點的處理器核心數(shù)乘以單核心基準性能得到處理器性能得分;將內(nèi)存容量除以基準內(nèi)存容量得到內(nèi)存性能得分;將網(wǎng)絡傳輸速率除以基準傳輸速率得到網(wǎng)絡性能得分;
14、將所述基礎權重與所述處理器性能得分的乘積記為第一子權重;將所述基礎權重與所述內(nèi)存性能得分的乘積記為第二子權重;將所述基礎權重與所述網(wǎng)絡性能得分的乘積記為第三子權重;
15、將所述第一子權重、所述第二子權重、第三子權重的加權平均值作為表征服務節(jié)點負載均衡程度的動態(tài)權重系數(shù)。
16、使用所述動態(tài)權重系數(shù)作為蟻群算法的啟發(fā)式信息,使用所述資源可用度指標作為路徑選擇的約束條件,通過迭代優(yōu)化過程生成資源分配方案,所述迭代優(yōu)化過程中的信息素更新規(guī)則基于服務響應時間和資源利用率進行動態(tài)調(diào)整包括:
17、設置蟻群算法的初始參數(shù),包括螞蟻數(shù)量、信息素初始值、信息素揮發(fā)系數(shù)和最大迭代次數(shù);
18、計算各服務節(jié)點的路徑選擇概率:將各服務節(jié)點的動態(tài)權重系數(shù)的倒數(shù)作為啟發(fā)式信息值;將可用cpu數(shù)量低于第一預設閾值或者可用內(nèi)存容量低于第二預設閾值或者可用網(wǎng)絡帶寬低于第三預設閾值的服務節(jié)點的路徑選擇概率設置為零;對剩余服務節(jié)點,將信息素濃度與啟發(fā)式信息值的乘積除以所有可選服務節(jié)點乘積之和,得到路徑選擇概率;
19、分配螞蟻群在不同節(jié)點出發(fā),每個螞蟻獨立執(zhí)行以下步驟:
20、記錄已訪問的服務節(jié)點;基于路徑選擇概率選擇下一個可訪問的服務節(jié)點;計算當前路徑下的負載方差;當訪問完所有服務節(jié)點或負載方差小于預設負載均衡閾值時,完成一次路徑搜索;
21、對每條搜索路徑執(zhí)行以下操作:獲取路徑上各服務節(jié)點的服務響應時間,計算平均響應時間;獲取路徑上各服務節(jié)點的資源利用率,計算平均資源利用率;計算平均響應時間與基準響應時間的比值,得到時間評價系數(shù);計算平均資源利用率與基準利用率的比值,得到利用率評價系數(shù);根據(jù)時間評價系數(shù)和利用率評價系數(shù)計算信息素增量;按照預設的信息素揮發(fā)系數(shù)更新路徑上的信息素濃度,并疊加信息素增量;
22、當達到最大迭代次數(shù)或連續(xù)多次迭代的負載方差變化小于收斂閾值時,選取負載方差最小的路徑作為資源分配方案。
23、根據(jù)時間評價系數(shù)和利用率評價系數(shù)計算信息素增量;按照預設的信息素揮發(fā)系數(shù)更新路徑上的信息素濃度,并疊加信息素增量包括:
24、將所述時間評價系數(shù)和所述利用率評價系數(shù)分別平方;將兩個評價系數(shù)的平方值相加;將相加結果除以評價系數(shù)數(shù)量;將計算結果乘以預設的路徑期望增益系數(shù),得到信息素增量;
25、獲取路徑當前的信息素濃度;將信息素濃度乘以預設的信息素保留率;將信息素增量疊加至當前信息素濃度;判斷更新后的信息素濃度是否在預設區(qū)間內(nèi);若超出預設區(qū)間則將信息素濃度設置為區(qū)間邊界值。
26、根據(jù)所述資源分配方案,生成服務遷移序列和資源分配指令,按照所述服務遷移序列的順序執(zhí)行服務遷移操作,并根據(jù)所述資源分配指令調(diào)整各服務節(jié)點的資源配置包括:
27、所述資源分配方案包括待遷移的源服務節(jié)點列表、目標服務節(jié)點列表以及每個服務節(jié)點的目標資源配置值;
28、獲取每個待遷移的源服務節(jié)點列表上運行的服務實例的資源占用量;計算目標服務節(jié)點列表中服務節(jié)點的剩余可用資源量;根據(jù)服務實例的資源占用量對源服務節(jié)點進行優(yōu)先級排序;根據(jù)剩余可用資源量對目標服務節(jié)點進行優(yōu)先級排序;將優(yōu)先級最高的源節(jié)點與優(yōu)先級最高的目標節(jié)點進行匹配,生成遷移序列;
29、計算每個服務節(jié)點當前的資源配置值與目標資源配置值的差值;對于需要擴容的服務節(jié)點,生成資源擴容指令;對于需要減容的服務節(jié)點,生成資源減容指令;將所述資源擴容指令和資源減容指令組成資源分配指令集。
30、本發(fā)明實施例的第二方面,提供基于服務流量預測的開源系統(tǒng)資源調(diào)度管理系統(tǒng),包括:
31、第一單元,用于獲取開源系統(tǒng)中各服務節(jié)點的歷史流量數(shù)據(jù),基于所述歷史流量數(shù)據(jù),構建深度神經(jīng)網(wǎng)絡模型,通過所述深度神經(jīng)網(wǎng)絡模型對各服務節(jié)點未來時間窗口內(nèi)的流量進行預測,得到預測流量數(shù)據(jù);
32、第二單元,用于根據(jù)所述預測流量數(shù)據(jù),結合各服務節(jié)點的計算能力參數(shù),計算動態(tài)權重系數(shù);
33、第三單元,用于實時采集開源系統(tǒng)中各服務節(jié)點的資源狀態(tài)信息,并基于所述資源狀態(tài)信息計算得到各服務節(jié)點的資源可用度指標;
34、第四單元,用于將所述動態(tài)權重系數(shù)和所述資源可用度指標輸入至改進的蟻群算法中,其中:使用所述動態(tài)權重系數(shù)作為蟻群算法的啟發(fā)式信息,使用所述資源可用度指標作為路徑選擇的約束條件,通過迭代優(yōu)化過程生成資源分配方案,所述迭代優(yōu)化過程中的信息素更新規(guī)則基于服務響應時間和資源利用率進行動態(tài)調(diào)整;
35、第五單元,用于根據(jù)所述資源分配方案,生成服務遷移序列和資源分配指令,按照所述服務遷移序列的順序執(zhí)行服務遷移操作,并根據(jù)所述資源分配指令調(diào)整各服務節(jié)點的資源配置。
36、本發(fā)明實施例的第三方面,提供一種電子設備,包括:
37、處理器;
38、用于存儲處理器可執(zhí)行指令的存儲器;
39、其中,所述處理器被配置為調(diào)用所述存儲器存儲的指令,以執(zhí)行前述所述的方法。
40、本發(fā)明實施例的第四方面,提供一種計算機可讀存儲介質,其上存儲有計算機程序指令,所述計算機程序指令被處理器執(zhí)行時實現(xiàn)前述所述的方法。
41、本技術的有益效果如下:
42、本發(fā)明通過構建深度神經(jīng)網(wǎng)絡模型對服務節(jié)點流量進行預測,并結合計算能力參數(shù)計算動態(tài)權重系數(shù),實現(xiàn)了對系統(tǒng)資源需求的準確預判,有效避免了傳統(tǒng)靜態(tài)資源分配方式導致的資源浪費和服務質量下降問題。
43、本發(fā)明將動態(tài)權重系數(shù)和資源可用度指標融入改進的蟻群算法中,使用動態(tài)權重作為啟發(fā)式信息,資源可用度作為約束條件,通過迭代優(yōu)化生成資源分配方案,提高了資源調(diào)度的靈活性和適應性,能夠根據(jù)流量變化動態(tài)調(diào)整資源分配策略。
44、本發(fā)明基于預測流量和計算能力參數(shù)的動態(tài)權重計算機制,結合資源狀態(tài)的實時監(jiān)控,實現(xiàn)了系統(tǒng)資源的高效分配和負載均衡,顯著提升了開源系統(tǒng)的整體性能和穩(wěn)定性,降低了系統(tǒng)響應時間,提高了資源利用率,為用戶提供更加流暢的服務體驗。