[發明專利]一種微服務調用負載均衡方法及系統在審
| 申請號: | 201910876276.9 | 申請日: | 2019-09-17 |
| 公開(公告)號: | CN112527491A | 公開(公告)日: | 2021-03-19 |
| 發明(設計)人: | 何賢平 | 申請(專利權)人: | 烽火通信科技股份有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 武漢智權專利代理事務所(特殊普通合伙) 42225 | 代理人: | 唐勇 |
| 地址: | 430000 湖北省武*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 微服 調用 負載 均衡 方法 系統 | ||
本發明公開了一種微服務調用負載均衡方法及系統,涉及微服務領域,該方法包括基于服務提供的業務對微服務的調用需求在微服務的服務描述文件中定義負載均衡策略;基于服務提供的業務對微服務的調用需求在配置中心中定義負載均衡策略;微服務啟動時,解析微服務的服務描述文件,將解析出的負載均衡策略緩存至本地靜態數據緩存中,同時將配置中心中的負載均衡策略緩存至本地動態數據緩存中;微服務被調用時,基于當前的業務,從本地靜態數據緩存或本地動態數據緩存中獲取對應當前業務的負載均衡策略,并生效。本發明能夠當業務調用微服務時,對設置的負載均衡策略靈活選擇。
技術領域
本發明涉及微服務領域,具體涉及一種微服務調用負載均衡方法及系統。
背景技術
微服務是一種將單應用程序作為一套小型服務開發的方法,每種應用程序都在其自己的進程中運行,并與輕量級機制進行通信,微服務是圍繞業務功能構建的,可以通過全自動部署機制進行獨立部署,可以使用不同的編程語言編寫,并使用不同的數據存儲技術。
在微服務領域,服務支持橫向擴展是一個最基礎的功能,橫向擴展的主要目的是通過部署多個微服務實例來分攤壓力,達到提高系統處理能力的目的,當微服務被多實例部署后,服務消費端在對微服務調用時就必須支持負載均衡,現有系統在支持負載均衡粒度上一般比較單一,有些系統僅支持全局策略,有些系統僅支持方法級策略。
發明內容
針對現有技術中存在的缺陷,本發明的目的在于提供一種微服務調用負載均衡方法及系統,能夠當業務調用微服務時,對設置的負載均衡策略靈活選擇。
為達到以上目的,本發明提供一種微服務調用負載均衡方法,包括以下步驟:
基于服務提供的業務對微服務的調用需求在微服務的服務描述文件中定義負載均衡策略,所述負載均衡策略與業務對應;
基于服務提供的業務對微服務的調用需求在配置中心中定義負載均衡策略,且對于同一業務,配置中心和微服務的服務描述文件中定義的負載均衡策略相同;
微服務啟動時,解析微服務的服務描述文件,將解析出的負載均衡策略緩存至本地靜態數據緩存中,同時將配置中心中的負載均衡策略緩存至本地動態數據緩存中;
微服務被調用時,基于當前的業務,從本地靜態數據緩存或本地動態數據緩存中獲取對應當前業務的負載均衡策略,并生效。
在上述技術方案的基礎上,
所述負載均衡策略包括全局策略、服務級策略和方法級策略;
所述全局策略適用于所有微服務的負載均衡策略;
所述服務級策略適用于特定微服務被調用時的負載均衡策略;
所述方法級策略適用于特定微服務的特定方法被調用時的負載均衡策略。
在上述技術方案的基礎上,
每種業務至少對應一種負載均衡策略;
當業務對應多種負載均衡策略,且負載均衡策略生效時,全局策略的優先級小于服務級策略的優先級,服務級策略的優先級小于方法級策略的優先級。
在上述技術方案的基礎上,當對配置中心中的負載均衡策略進行修改時,修改后的負載均衡策略實時同步至本地動態數據緩存,且當微服務被調用時,若本地動態數據緩存和本地靜態數據緩存中均存在對應當前業務的負載均衡策略,則本地動態數據緩存中的負載均衡策略生效。
在上述技術方案的基礎上,所述將配置中心中的負載均衡策略緩存至本地動態數據緩存中,具體步驟為:當微服務啟動時,通過微服務的配置緩存組件從配置中心拉取負載均衡策略,將拉取的負載均衡策略緩存至本地動態數據緩存中,且本地動態數據緩存與配置中心間創建有同步機制,用于保持本地動態數據緩存與配置中心中負載均衡策略的一致性。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于烽火通信科技股份有限公司,未經烽火通信科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910876276.9/2.html,轉載請聲明來源鉆瓜專利網。





