一種進行業務調度的方法和裝置與流程
2023-12-07 19:51:51 2

本發明涉及網絡數據傳輸領域,特別涉及一種進行業務調度的方法和裝置。
背景技術:
cdn(contentdeliverynetwork,內容分發網絡)是一種在服務提供方和消費方之間,通過架設節點伺服器(可稱為網絡節點)的網絡。通過該網絡,用戶可以就近從網絡節點處獲取所需的內容,從而可以達到緩解網絡擁塞,提高用戶訪問網站的速度的目的。
當某個網絡節點在超負荷狀態下持續運轉,或者網絡出現異常波動時,cdn管理側的技術人員需要對cdn全網中的部分業務進行調度,即選擇出較優的替代資源,將上述部分業務移至該替代資源上處理。
在實現本發明的過程中,發明人發現現有技術至少存在以下問題:
在選擇替代資源時,技術人員需要先人工統計網絡資源的配置狀況,如各網絡節點的負載情況、網絡情況、物理位置、服務冗餘度等,然後再對配置狀況進行分析處理,以選擇出最優的替代資源,這樣,由於需要大量的人工參與,業務調度的效率較低。
技術實現要素:
為了解決現有技術的問題,本發明實施例提供了一種進行業務調度的方法和裝置。所述技術方案如下:
第一方面,提供了一種進行業務調度的方法,所述方法包括:
當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況;
根據所述第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表,所述替代資源列表中記錄有至少一個替代資源和所述至少一個替代資源對應的權值;
按照預設的第一挑選策略,根據所述至少一個替代資源對應的權值,在所述替代資源列表中選擇第一替代資源;
基於所述第一替代資源,在所述cdn全網中進行業務調度。
可選的,所述方法還包括:
當在cdn測試環境中檢測到預設的調度觸發事件時,獲取所述cdn測試環境中網絡資源當前的第二配置狀況,其中,所述cdn測試環境為所述cdn局部網絡和/或cdn虛擬全網;
基於所述第二配置狀況,對初始的業務調度模型進行訓練,調整所述業務調度模型的參數。
可選的,所述基於所述第二配置狀況,對初始的業務調度模型進行訓練,調整所述業務調度模型的參數,包括:
基於所述第二配置狀況,通過初始的業務調度模型,生成替代資源列表;
按照所述第一挑選策略,在所述替代資源列表中選擇第二替代資源,並基於所述第二替代資源,在所述cdn測試環境中進行業務調度;
通過預設的網絡評分標準,對所述業務調度後的,所述cdn測試環境中網絡資源的第三配置狀況進行評分;
根據評分結果,通過反向傳播算法,對所述業務調度模型的參數進行調整。
可選的,所述在所述cdn全網中進行業務調度之後,還包括:
通過預設的網絡評分標準,對所述業務調度後的,所述cdn全網中網絡資源的第四配置狀況進行評分;
根據評分結果,通過反向傳播算法,對所述業務調度模型的參數進行調整。
可選的,所述當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況,包括:
當檢測到所述cdn全網中第一網絡資源的狀態參數異常時,通過訓練得到的故障報警模型,確定調度觸發概率;
生成0到1之間的隨機數,當所述隨機數小於或等於所述調度觸發概率時,獲取cdn全網中網絡資源當前的第一配置狀況。
可選的,所述方法還包括:
根據所述cdn全網的故障報警歷史數據,以馬爾科夫鏈的形式計算建立故障報警模型。
第二方面,提供了一種進行業務調度的裝置,所述裝置包括:
獲取模塊,用於當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況;
生成模塊,用於根據所述第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表,所述替代資源列表中記錄有至少一個替代資源和所述至少一個替代資源對應的權值;
選擇模塊,用於按照預設的第一挑選策略,根據所述至少一個替代資源對應的權值,在所述替代資源列表中選擇第一替代資源;
調度模塊,用於基於所述第一替代資源,在所述cdn全網中進行業務調度。
可選的,所述獲取模塊,還用於:當在cdn測試環境中檢測到預設的調度觸發事件時,獲取所述cdn測試環境中網絡資源當前的第二配置狀況,其中,所述cdn測試環境為所述cdn局部網絡和/或cdn虛擬全網;
所述裝置還包括訓練模塊,用於基於所述第二配置狀況,對初始的業務調度模型進行訓練,調整所述業務調度模型的參數。
可選的,所述訓練模塊,具體用於:
基於所述第二配置狀況,通過初始的業務調度模型,生成替代資源列表;
按照所述第一挑選策略,在所述替代資源列表中選擇第二替代資源,並基於所述第二替代資源,在所述cdn測試環境中進行業務調度;
通過預設的網絡評分標準,對所述業務調度後的,所述cdn測試環境中網絡資源的第三配置狀況進行評分;
根據評分結果,通過反向傳播算法,對所述業務調度模型的參數進行調整。
可選的,所述裝置還包括:
評分模塊,用於在所述cdn全網中進行業務調度之後,通過預設的網絡評分標準,對所述業務調度後的,所述cdn全網中網絡資源的第四配置狀況進行評分;
調整模塊,用於根據評分結果,通過反向傳播算法,對所述業務調度模型的參數進行調整。
可選的,所述獲取模塊,具體用於:
當檢測到所述cdn全網中第一網絡資源的狀態參數異常時,通過訓練得到的故障報警模型,確定調度觸發概率;
生成0到1之間的隨機數,當所述隨機數小於或等於所述調度觸發概率時,獲取cdn全網中網絡資源當前的第一配置狀況。
可選的,所述裝置還包括:
建立模塊,用於根據所述cdn全網的故障報警歷史數據,以馬爾科夫鏈的形式計算建立故障報警模型。
第三方面,提供了一種管理設備,所述管理設備包括處理器和存儲器,所述存儲器中存儲有至少一條指令、至少一段程序、代碼集或指令集,所述至少一條指令、所述至少一段程序、所述代碼集或指令集由所述處理器加載並執行以實現如第一方面所述的進行業務調度的方法。
第四方面,提供了一種計算機可讀存儲介質,所述存儲介質中存儲有至少一條指令、至少一段程序、代碼集或指令集,所述至少一條指令、所述至少一段程序、所述代碼集或指令集由處理器加載並執行以實現如第一方面所述的進行業務調度的方法。
本發明實施例提供的技術方案帶來的有益效果是:
本發明實施例中,當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況;根據第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表,替代資源列表中記錄有至少一個替代資源和至少一個替代資源對應的權值;按照預設的第一挑選策略,根據至少一個替代資源對應的權值,在替代資源列表中選擇第一替代資源;基於第一替代資源,在cdn全網中進行業務調度。這樣,通過對業務調度過程以及業務調度結果反饋的不斷學習,管理設備可以理解並掌握如何選擇替代資源,避免人為指定調度規則所帶來的不準確性、維護困難以及成本波動等問題,同時,在進行業務調度過程中,直接由管理設備通過業務調度模型選擇出最優的替代資源,無需大量的人工參與,故而可以提高業務調度的效率。
附圖說明
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本發明實施例提供的一種進行業務調度的方法流程圖;
圖2是本發明實施例提供的一種訓練業務調度模型的方法流程圖;
圖3是本發明實施例提供的一種深度強化學習網絡架構示意圖;
圖4是本發明實施例提供的一種進行業務調度的裝置結構示意圖;
圖5是本發明實施例提供的一種進行業務調度的裝置結構示意圖;
圖6是本發明實施例提供的一種進行業務調度的裝置結構示意圖;
圖7是本發明實施例提供的一種進行業務調度的裝置結構示意圖;
圖8是本發明實施例提供的一種管理設備的結構示意圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。
本發明實施例提供了一種進行業務調度的方法,該方法的執行主體為cdn全網的管理設備,該管理設備用於監控cdn全網的網絡資源的配置狀況,並基於配置狀況對cdn全網中的網絡業務進行調度。其中,該管理設備可以是單獨設立的,專用於管理的伺服器,也可以是cdn全網中,同時支持網絡業務的節點伺服器。本實施例中管理設備的功能可以由獨立的一臺設備實現,也可以由多臺設備組成的設備組共同實現。上述管理設備中可以包括處理器、存儲器、收發器,處理器可以用於進行下述流程中的進行業務調度的處理,存儲器可以用於存儲下述處理過程中需要的數據以及產生的數據,收發器可以用於接收和發送下述處理過程中的相關數據。本實施例中,以管理設備為cdn全網的獨立的管理設備為例進行說明,其它情況與之類似。
下面將結合具體實施方式,對圖1所示的處理流程進行詳細的說明,內容可以如下:
步驟101,當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況。
其中,cdn全網為線上提供cdn加速服務的全部資源環境;網絡資源可以是網絡節點的處理資源和/或傳輸線路的傳輸資源,網絡資源的配置狀況可以包括各網絡節點的cpu佔用率、服務冗餘度、輸入輸出值,以及各網絡節點間的傳輸線路的帶寬使用率、響應時間、丟包率等。
在實施中,cdn管理側的技術人員可以預先在管理設備中設置進行業務調度的調度觸發事件,調度觸發事件可以包括對cdn全網的故障預測報警、人為登記的故障發生、定時調度任務到達觸發時間等。這樣,管理設備可以通過實時監控上述調度觸發事件是否發生,來決定是否進行業務調度處理。當檢測到預設的調度觸發事件時,可以先獲取cdn全網中網絡資源當前的第一配置狀況。當然,在一定情況下,視業務調度規則的不同,可以在cdn全網中僅獲取與業務調度相關聯的部分網絡資源的配置狀況,例如,當某個網絡節點持續超負荷運行,需要對該網絡節點上的業務進行調度時,則可以僅獲取該網絡節點,及其附近的網絡節點和傳輸線路上的網絡資源的配置狀況,後續涉及的獲取的網絡資源的配置狀況的情況,具體處理與此處保持一致,不再一一贅述。
可選的,可以通過故障報警模型來提前觸發業務調度,相應的,步驟101的處理可以如下:當檢測到cdn全網中第一網絡資源的狀態參數異常時,通過訓練得到的故障報警模型,確定調度觸發概率;生成0到1之間的隨機數,當隨機數小於或等於調度觸發概率時,獲取cdn全網中網絡資源當前的第一配置狀況。
在實施中,管理設備中可以預先設置有用於預測cdn全網中故障的故障報警模型,通過該故障報警模型,可以通過cdn全網中的底層機器指標(即網絡資源的狀態參數),來預測出現故障,需要進行業務調度的概率,若概率較高,則會以較大概率觸發調度。具體的,管理設備可以獲取cdn全網中網絡資源的狀態參數,當檢測到cdn全網中第一網絡資源的狀態參數異常時,則可以通過訓練得到的故障報警模型,確定調度觸發概率。之後,可以生成0到1之間的隨機數,然後將該隨機數與上述調度觸發概率作比較,當隨機數小於或等於調度觸發概率時,則觸發業務調度,進而,管理設備可以獲取cdn全網中網絡資源當前的第一配置狀況。上述處理可以具體由下式實現:
其中,y=1表示觸發業務調度,y=0表示不觸發業務調度。p為通過故障報警模型確定的調度觸發概率,π(t)為在時間t情況下,隨機產生的0到1之間的隨機數,如果該隨機數小於或等於p,則y=1;否則y=0。
可選的,上述故障報警模型的訓練過程可以如下:根據cdn全網的故障報警歷史數據,以馬爾科夫鏈的形式計算建立故障報警模型。
在實施中,管理設備可以根據cdn全網內近期的故障報警歷史數據建立故障報警模型,並且通過cdn全網中實時產生的故障報警數據不斷更新故障報警模型。其中,故障報警歷史數據是對cdn全網中各個節點伺服器監控產生的,從狀態參數異常到實際觸發業務調度的歷史數據。管理設備可以基於故障報警歷史數據,設定狀態參數異常到觸發業務調度的轉換規則(也可稱為底層機器指標異常報警到高層報警的轉換規則),比如在時間序列基礎上,高層報警是基於底層指標異常報警產生的,且高層報警僅與其直接的下一級報警相關,故而可以採用馬爾科夫鏈進行計算:
p(xn+1=x|x1=x1,x2=x2,...,xn=xn)=p(xn+1=x|xn=xn)
其中,馬爾科夫鏈是具有馬爾科夫性質的隨機變量的一個數列,其描述了一種狀態序列,每個狀態值取決於前面有限個狀態。這些隨機變量的範圍,是它們所有可能取值的集合,被稱為「狀態空間」。具體到本實施例,隨機變量xn代表在時間n時的狀態,xn+1則僅是xn的一個函數。進一步的,管理設備可以根據cdn全網的故障報警歷史數據,以馬爾科夫鏈的形式計算建立故障報警模型。這樣,通過對網絡資源的狀態參數進行分析,建立狀態參數異常與觸發業務調度間的關聯關係,在檢測狀態參數變化的過程中,對後續故障進行預測,從而可以實現事前調度,一定程度上保障了服務質量和用戶體驗。
步驟102,根據第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表。
其中,替代資源列表中記錄有至少一個替代資源和至少一個替代資源對應的權值。
在實施中,管理設備中可以預先存儲有經過大量學習訓練的業務調度模型,該業務調度模型可以是建立在大規模離散狀態-行動空間上的深度強化學習模型,並通過樣本訓練進行迭代學習。傳統的強化學習是一種解決離散狀態-行動空間問題的算法,但是當離散狀態和行動空間過大時,傳統的強化學習則很難有效地處理這些情況。而深度強化學習模型將強化學習和深度學習兩種機器學習方式結合起來,可以支持大規模離散狀態-行動空間上的學習任務,適用於本實施例中進行業務調度的處理,具體的模型訓練可以參見後文。
管理設備在獲取cdn全網中網絡資源當前的第一配置狀況後,可以由第一配置狀況得到當前全網資源配置的狀態向量,然後調取訓練得到的業務調度模型,並將上述狀態向量作為業務調度模型的輸入,採用業務調度模型的隱藏層的前向傳播算法進行計算,進而可以由業務調度模型輸出層得到替代資源列表(也可理解為替代資源概率列表),該替代資源列表中記錄有至少一個替代資源和至少一個替代資源對應的權值,此處,權值可以理解為對應的每個替代資源的選擇權重。
步驟103,按照預設的第一挑選策略,根據至少一個替代資源對應的權值,在替代資源列表中選擇第一替代資源。
在實施中,管理設備在通過業務調度模型得到替代資源列表後,可以按照預設的第一挑選策略,根據替代資源列表中記錄的每個替代資源對應的權值,在上述替代資源列表中選擇出第一替代資源,即選擇出最優的替代資源。需要說明的是,第一挑選策略是對業務調度模型進行訓練時所使用的挑選策略,此處並不對第一挑選策略為何種策略進行具體限定,管理側的技術人員可以根據實際情況選擇挑選策略,例如可以是貪心策略,即在替代資源列表中選擇出對應的權值最高的替代資源作為第一替代資源,還可以先選擇出權值最高的n個替代資源,然後再從中隨機選出第一替代資源。
步驟104,基於第一替代資源,在cdn全網中進行業務調度。
在實施中,管理設備在替代資源列表中選擇出第一替代資源後,可以基於第一替代資源,在cdn全網中進行業務調度處理,即通過第一替代資源來執行相應業務。
可選的,管理設備在cdn全網中使用業務調度模型進行業務調度前,可以先在cdn測試環境中對業務調度模型進行參數調整,相應的處理可以如下:當在cdn測試環境中檢測到預設的調度觸發事件時,獲取cdn測試環境中網絡資源當前的第二配置狀況;基於第二配置狀況,對初始的業務調度模型進行訓練,調整業務調度模型的參數。
其中,cdn測試環境為cdn局部網絡和/或cdn虛擬全網。
在實施中,管理設備可以構建用於訓練業務調度模型的cdn測試環境,在該cdn測試環境中,可以基於各種調度觸發事件,對初始的業務調度模型進行迭代訓練,以得到較為成熟的業務調度模型。具體的處理可以如下,當在cdn測試環境中檢測到預設的調度觸發事件時,管理設備可以獲取cdn測試環境中網絡資源當前的第二配置狀況,然後基於第二配置狀況,對初始的業務調度模型進行訓練,以調整業務調度模型的參數。
上述cdn測試環境可以為cdn局部網絡和/或cdn虛擬全網。其中,一方面,採用cdn局部網絡的目的在於通過從cdn全網環境中規劃出一個小範圍的測試環境,以使業務調度模型在訓練期間所產生的負面影響,可以被控制在局部網絡的較小範圍內,從而可以有效減小對cdn全網的服務質量和成本帶來的影響。該局部網絡可以根據網絡節點的物理位置、業務所屬運營商或者用戶等級等進行劃分。另一方面,cdn虛擬全網可以是指根據真實cdn全網虛擬出的一個網絡環境,該網絡環境支持業務調度系統與其進行交互,且支持根據調度結果,模擬真實cdn全網對調度結果的響應情況,此外,調度觸發事件可以簡單的由元胞自動機模型進行模擬。
不難發現,相對於cdn局部網絡,基於cdn虛擬全網來訓練業務調度模型存在以下幾點優勢:首先,cdn局部網絡屬於真實網絡環境,在進行業務調度前,需要等待調度觸發事件出現,才能進行調度處理以累積訓練數據。這樣,模型訓練需要一個比較長的時間周期。而對於cdn虛擬全網,可以通過元胞自動機進行調度觸發事件的模擬,從而可以大幅縮短模型訓練的時間周期。其次,cdn局部網絡是為了減小業務調度模型在訓練期間,對線上服務質量和成本帶來較大的負面影響,而在cdn全網中規劃出的一個子集環境,該子集環境雖然能夠將負面影響限制在一個較小的範圍內,但是卻不能完全消除負面影響。同時,由於是cdn全網的子集環境,在該子集環境上產生的用於模型訓練的數據是一個局部數據集,可能與cdn全網的全局數據集在數據分布存在很大差別,這樣,會導致訓練生成的業務調度模型出現過擬合現象,無法的泛化到cdn全網的環境中。而cdn虛擬網絡中的任何處理都不會對真實的cdn全網造成影響,並且cdn虛擬網絡是模擬真實的cdn全網環境,可以有效避免數據層面的局限性。
可選的,上述業務調度模型的訓練處理可以具體包括如圖2所示的幾個步驟:
步驟201,基於第二配置狀況,通過初始的業務調度模型,生成替代資源列表。
在實施中,管理設備在獲取到cdn測試環境中網絡資源當前的第二配置狀況後,可以由第二配置狀況得到當前全網資源配置的狀態向量,再調取初始的業務調度模型,並將上述狀態向量作為該初始的業務調度模型的輸入,利用業務調度模型的隱藏層的前向傳播算法進行計算,進而可以由業務調度模型的輸出層得到替代資源列表,該替代資源列表中記錄有至少一個替代資源和至少一個替代資源對應的權值。
業務調度模型的結構可以參考圖3所示的深度強化學習網絡架構,其中,輸入層為狀態向量,輸出層為替代資源的權值,隱藏層為神經元線性或非線性計算。業務調度模型可以基於初始化的參數,根據輸入層輸入的狀態向量,經過隱藏層前向傳播計算,從而輸出層輸出權值,相應的計算公式可以如下:
其中,表示第l+1層第i個單元輸入加權和,x1,x2,...,xn為輸入單元,為第l層第i個單元的偏置單元,為第l層的第j個單元到第l+1層的第i個單元之間的連接權重。表示第l+1層第i個單元的激活值(即相當於上述替代資源對應的權值),f(·)為激活函數,可以是sigmoid、tanh等函數。
步驟202,按照第一挑選策略,在替代資源列表中選擇第二替代資源,並基於第二替代資源,在cdn測試環境中進行業務調度。
在實施中,管理設備在通過業務調度模型得到替代資源列表後,可以按照第一挑選策略,根據替代資源列表中記錄的每個替代資源對應的權值,在上述替代資源列表中選擇出第二替代資源。然後,管理設備可以在cdn測試環境中,基於第二替代資源進行業務調度。值得一提的是,屬於業務調度模型的訓練階段,上述替代資源列表中各替代資源的權值準確性無法得到保證,故而選擇出的第二替代資源有可能不是實際最優的替代資源。
步驟203,通過預設的網絡評分標準,對業務調度後的,cdn測試環境中網絡資源的第三配置狀況進行評分。
在實施中,管理側的技術人員可以針對網絡節點的帶寬情況、服務能力、用戶覆蓋情況、響應時間等多維度數據進行綜合考慮,建立網絡質量評分標準,同時還可以對網絡節點的規劃情況、計費類型、計費係數等多維度數據進行綜合考慮,建立網絡成本評分標準。具體的,首先可以從網絡資源角度進行質量評分,如對單個節點伺服器的質量評分、服務集群質量評分等,還可以從用戶角度進行質量評分,比如用戶響應時間等,然後對兩個維度的質量分數進行綜合分析;然後還可以基於計費單元(比如單個網絡節點),根據不同的計費類型和計費係數計算出當前cdn所產生的成本分數,最後可以將質量分數和成本分數綜合起來,生成網絡評分標準,並將該網絡評分標準存儲至管理設備中。
這樣,在基於第二替代資源進行業務調度之後,管理設備可以通過上述預設的網絡評分標準,對調度後的cdn測試環境中網絡資源的第三配置狀況進行評分。
步驟204,根據評分結果,通過反向傳播算法,對業務調度模型的參數進行調整。
在實施中,管理設備獲取到調度後的cdn測試環境中網絡資源的配置狀況的評分結果後,可以通過反向傳播算法,對業務調度模型的參數進行調整。其中,反向傳播算法可以如下:
公式1,計算業務調度模型的最後一層計算所產生的誤差:
公式2,計算業務調度模型的每一層計算所產生的誤差:
公式3,計算權重的梯度:
公式4,計算偏置的梯度:
其中,l表示隱藏層的最後一層,c表示模型輸出值和標準值之間的真實誤差,δl表示計算得到的最後一層的誤差,δl表示計算得到的第l層的誤差,為hadamard(阿達瑪)乘積,表示最後一層誤差對最後一層單元輸出a的導數,σ′(zl)表示激活函數對最後一層單元輸入的導數,σ′(zl)表示激活函數對第l層單元輸入的導數。
可選的,與訓練階段相似,步驟104在cdn全網中進行業務調度後,可以對調度結果進行評分,然後基於評分結果對參數調整,相應的處理可以如下:通過預設的網絡評分標準,對業務調度後的,cdn全網中網絡資源的第四配置狀況進行評分;根據評分結果,通過反向傳播算法,對業務調度模型的參數進行調整。
在實施中,管理設備基於第一替代資源,在cdn全網中進行業務調度之後,可以獲取業務調度後的cdn全網中網絡資源的第四配置狀況,然後可以通過預設的網絡評分標準,對第四配置狀況進行評分。之後,可以再根據評分結果,通過反向傳播算法,對業務調度模型的參數進行調整。
這樣,業務調度模型利用了深度神經網絡的高度抽象能力,可以有效地對cdn全網環境中的複雜問題進行表徵,並根據網絡評分標準的反饋,通過反向傳播算法更新模型中的參數,從而在經歷一段時間的學習過程後,能夠對業務調度問題進行綜合考量,選擇出全局最優的方案。在訓練階段,若出現觸發調度的情況,將cdn測試環境中網絡資源的配置狀況設置為模型的輸入,模型會基於當前的參數,輸出替代資源列表,之後再根據一定挑選策略選擇替代資源,然後利用網絡評分標準對替代資源的服務情況進行評估並反饋給模型,模型接收到反饋後,根據反向傳播算法,調整模型參數,使後續調度能夠朝著全局最優的方向進行。當訓練達到一定迭代次數或者訓練結果滿足某個預定條件時,可以生成性能較好的業務調度模型。之後,可以將該業務調度模型應用到cdn全網環境中,並且在後續的運行過程中仍然持續進行學習,即發生調度觸發事件時,業務調度模型可以選擇預計對未來產生正面影響的替代資源繼續執行業務,同時可以通過網絡評分標準對替代資源的選擇進行評估,從而業務調度模型可以根據評分結果進一步的調整參數。
本發明實施例中,當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況;根據第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表,替代資源列表中記錄有至少一個替代資源和至少一個替代資源對應的權值;按照預設的第一挑選策略,根據至少一個替代資源對應的權值,在替代資源列表中選擇第一替代資源;基於第一替代資源,在cdn全網中進行業務調度。這樣,通過對業務調度過程以及業務調度結果反饋的不斷學習,理解並掌握應該如何選擇替代資源,避免人為指定調度規則帶來的不準確性、維護困難以及成本波動等問題,同時,在進行業務調度過程中,直接由管理設備通過業務調度模型選擇出最優的替代資源,無需大量的人工參與,故而可以提高業務調度的效率。
基於相同的技術構思,本發明實施例還提供了一種進行業務調度的裝置,如圖4所示,該裝置包括:
獲取模塊401,用於當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況;
生成模塊402,用於根據所述第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表,所述替代資源列表中記錄有至少一個替代資源和所述至少一個替代資源對應的權值;
選擇模塊403,用於按照預設的第一挑選策略,根據所述至少一個替代資源對應的權值,在所述替代資源列表中選擇第一替代資源;
調度模塊404,用於基於所述第一替代資源,在所述cdn全網中進行業務調度。
可選的,所述獲取模塊401,還用於:當在cdn測試環境中檢測到預設的調度觸發事件時,獲取所述cdn測試環境中網絡資源當前的第二配置狀況,其中,所述cdn測試環境為所述cdn局部網絡和/或cdn虛擬全網;
如圖5所示,所述裝置還包括訓練模塊405,用於基於所述第二配置狀況,對初始的業務調度模型進行訓練,調整所述業務調度模型的參數。
可選的,所述訓練模塊405,具體用於:
基於所述第二配置狀況,通過初始的業務調度模型,生成替代資源列表;
按照所述第一挑選策略,在所述替代資源列表中選擇第二替代資源,並基於所述第二替代資源,在所述cdn測試環境中進行業務調度;
通過預設的網絡評分標準,對所述業務調度後的,所述cdn測試環境中網絡資源的第三配置狀況進行評分;
根據評分結果,通過反向傳播算法,對所述業務調度模型的參數進行調整。
可選的,如圖6所示,所述裝置還包括:
評分模塊406,用於在所述cdn全網中進行業務調度之後,通過預設的網絡評分標準,對所述業務調度後的,所述cdn全網中網絡資源的第四配置狀況進行評分;
調整模塊407,用於根據評分結果,通過反向傳播算法,對所述業務調度模型的參數進行調整。
可選的,所述獲取模塊401,具體用於:
當檢測到所述cdn全網中第一網絡資源的狀態參數異常時,通過訓練得到的故障報警模型,確定調度觸發概率;
生成0到1之間的隨機數,當所述隨機數小於或等於所述調度觸發概率時,獲取cdn全網中網絡資源當前的第一配置狀況。
可選的,如圖7所示,所述裝置還包括:
建立模塊408,用於根據所述cdn全網的故障報警歷史數據,以馬爾科夫鏈的形式計算建立故障報警模型。
本發明實施例中,當檢測到預設的調度觸發事件時,獲取cdn全網中網絡資源當前的第一配置狀況;根據第一配置狀況,通過訓練得到的業務調度模型,生成替代資源列表,替代資源列表中記錄有至少一個替代資源和至少一個替代資源對應的權值;按照預設的第一挑選策略,根據至少一個替代資源對應的權值,在替代資源列表中選擇第一替代資源;基於第一替代資源,在cdn全網中進行業務調度。這樣,通過對業務調度過程以及業務調度結果反饋的不斷學習,理解並掌握應該如何選擇替代資源,避免人為指定調度規則帶來的不準確性、維護困難以及成本波動等問題,同時,在進行業務調度過程中,直接由管理設備通過業務調度模型選擇出最優的替代資源,無需大量的人工參與,故而可以提高業務調度的效率。
需要說明的是:上述實施例提供的進行業務調度的裝置在進行業務調度時,僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模塊完成,即將裝置的內部結構劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實施例提供的進行業務調度的裝置與進行業務調度的方法實施例屬於同一構思,其具體實現過程詳見方法實施例,這裡不再贅述。
圖8是本發明實施例提供的管理設備的結構示意圖。該管理設備800可因配置或性能不同而產生比較大的差異,可以包括一個或一個以上中央處理器822(例如,一個或一個以上處理器)和存儲器832,一個或一個以上存儲應用程式842或數據844的存儲介質830(例如一個或一個以上海量存儲設備)。其中,存儲器832和存儲介質830可以是短暫存儲或持久存儲。存儲在存儲介質830的程序可以包括一個或一個以上模塊(圖示沒標出),每個模塊可以包括對服務端中的一系列指令操作。更進一步地,中央處理器822可以設置為與存儲介質830通信,在管理設備800上執行存儲介質830中的一系列指令操作。
管理設備800還可以包括一個或一個以上電源826,一個或一個以上有線或無線網絡接口850,一個或一個以上輸入輸出接口858,一個或一個以上鍵盤856,和/或,一個或一個以上作業系統841,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。
管理設備800可以包括有存儲器,以及一個或者一個以上的程序,其中一個或者一個以上程序存儲於存儲器中,且經配置以由一個或者一個以上處理器執行所述一個或者一個以上程序包含用於執行上述進行業務調度的指令。
本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬體來完成,也可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。
以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。