[發明專利]一種基于耦合度的微服務在線分配方法與系統在審
| 申請號: | 202010960107.6 | 申請日: | 2020-09-14 |
| 公開(公告)號: | CN112148484A | 公開(公告)日: | 2020-12-29 |
| 發明(設計)人: | 李影;楊勇;王康瑾;張齊勛 | 申請(專利權)人: | 北京大學 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 北京萬象新悅知識產權代理有限公司 11360 | 代理人: | 黃鳳茹 |
| 地址: | 100871*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 耦合度 微服 在線 分配 方法 系統 | ||
1.一種基于耦合度的微服務在線分配方法,通過計算微服務之間的耦合度,對所有微服務進行分組,并將同一組內的微服務分配到同一個硬件節點上,降低頻繁的網絡通信導致的系統開銷,縮短請求響應時間,實現基于微服務架構的系統中微服務在線分配的優化;包括如下步驟:
1)獲取請求執行路徑與資源監控數據:
捕獲由多個微服務組成的軟件系統端到端處理服務請求的過程,即生成請求執行路徑,請求執行路徑為有向無環圖,圖中的每一個頂點表示與處理一個服務請求相關的事件,每一條邊代表事件之間的因果關系;
獲取的資源監控數據包括每個微服務的資源使用數據與每個硬件節點上的剩余可用資源數據;每個微服務的資源使用數據包括單位時間每個微服務的CPU使用量、內存使用量等;
2)根據請求執行路徑計算得到微服務耦合度,用于量化微服務之間的依賴程度;
基于在一定的時間窗口內的目標系統中生成的所有請求執行路徑,計算得到微服務之間的網絡交互的頻率與平均網絡消息的大小并計算任意兩個微服務之間的耦合度,從而生成所有微服務之間的依賴關系圖;圖中的每個頂點代表一個微服務;每條邊為無向邊,代表相互連通的兩個微服務之間的耦合度;
3)基于微服務耦合度將所有微服務劃分到互不相交的k個微服務分組MicroServPod;每個MicroServPod包括一組存在較強相互依賴關系的微服務;同一MicroServPod中的不同微服務之間的耦合度高,而不同MicroServPods中微服務之間的耦合度低;
4)基于微服務之間的資源競爭關系將MicroServPod劃分為微服務細分組SubMicroServPod;包括如下過程:
根據步驟1)得到的每個微服務的資源使用數據,計算每個微服務的預期資源使用量,包括:CPU,內存,帶寬,磁盤IO,并判斷微服務間是否存在顯著資源競爭關系;
將一個MicroServPod中具有顯著資源競爭關系的微服務劃分到不同的SubMicroServPod中,使得每個SubMicroServPod中不存在具有顯著競爭關系的微服務,且每個SubMicroServPod的所有微服務的資源消耗總量不超過單個硬件節點的資源總量或指定的閾值;
5)根據每個SubMicroServPod的資源消耗總量,基于SubMicroServPod對微服務進行分配;包括如下過程:
以SubMicroServPod為最小單位進行微服務分配,將同一個SubMicroServPod中的所有微服務分配到同一個節點上運行,將屬于同一MicroServPod的不同SubMicroServPod的微服務分配到不同的節點上;
根據一個節點上剩余的資源總量和一個SubMicroServPod中預期的資源使用總量確定一個SubMicroServPod中的所有微服務是否分配到該節點上;
通過上述步驟,將每一個SubMicroServPod中的所有微服務分配至硬件節點上運行,即實現基于耦合度的微服務的在線分配。
2.如權利要求1所述基于耦合度的微服務在線分配方法,其特征是,步驟1)具體利用分布式追蹤技術,捕獲由多個微服務組成的軟件系統端到端處理服務請求;具體利用資源監控工具,獲取資源監控數據;所述獲取請求執行路徑與資源監控數據包括從線上的系統、測試系統和預上線系統環境中獲取。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京大學,未經北京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010960107.6/1.html,轉載請聲明來源鉆瓜專利網。





