[發(fā)明專利]用于微服務(wù)的限流方法及裝置有效
| 申請?zhí)枺?/td> | 202011329458.3 | 申請日: | 2020-11-24 |
| 公開(公告)號: | CN112367268B | 公開(公告)日: | 2022-07-05 |
| 發(fā)明(設(shè)計)人: | 翟小青;陳乃帥;湯國強;汪宇;孫遷 | 申請(專利權(quán))人: | 蘇寧云計算有限公司 |
| 主分類號: | H04L47/20 | 分類號: | H04L47/20;H04L47/2425;H04L47/10 |
| 代理公司: | 北京市萬慧達律師事務(wù)所 11111 | 代理人: | 盛安平 |
| 地址: | 210000 江蘇省南*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 微服 限流 方法 裝置 | ||
本發(fā)明公開一種用于微服務(wù)的限流方法及裝置,針對復(fù)雜查詢場景,提供了更細粒度的限流方案。該方法包括:針對微服務(wù)系統(tǒng)提供的微服務(wù)配置出多個限流優(yōu)先級;接收調(diào)用方系統(tǒng)的接入申請,獲取調(diào)用方系統(tǒng)對微服務(wù)的期望并發(fā)和期望TPS,用于匹配微服務(wù)中對應(yīng)的限流優(yōu)先級;獲取調(diào)用方系統(tǒng)的微服務(wù)請求進行預(yù)占判斷,判斷通過后基于當前微服務(wù)請求的TPS預(yù)占數(shù)進行正式預(yù)占,并向調(diào)用方系統(tǒng)返回預(yù)占碼;基于限流優(yōu)先級中匹配的TPS閾值以及預(yù)占碼和TPS預(yù)占數(shù),判斷是否對當前微服務(wù)請求執(zhí)行TPS限流;和/或,基于限流優(yōu)先級中匹配的并發(fā)閾值以及當前微服務(wù)請求的并發(fā)數(shù),判斷是否對當前微服務(wù)請求執(zhí)行并發(fā)限流。該裝置應(yīng)用有上述方案所提的方法。
技術(shù)領(lǐng)域
本發(fā)明涉及微服務(wù)技術(shù)領(lǐng)域,尤其涉及一種用于微服務(wù)的限流方法及裝置。
背景技術(shù)
在開發(fā)微服務(wù)系統(tǒng)時,需要使用諸多手段保護微服務(wù)系統(tǒng),比如緩存、降級和限流。其中限流的目的是通過對并發(fā)訪問/請求進行限速或者一個時間窗口內(nèi)的請求進行限速來保護系統(tǒng),一旦達到限速速率則可以拒絕服務(wù)、排隊或者等待。我們可以通過壓測找到每個微服務(wù)系統(tǒng)的處理峰值閾值,當系統(tǒng)過載時,則通過限流手段來保障系統(tǒng)可用。
根據(jù)實際限流場景,現(xiàn)有的微服務(wù)限流方案,存在以下幾個問題:
1、現(xiàn)有的微服務(wù)限流一般是到服務(wù)實例/集群級別,沒有細化到更細層次,例如針對調(diào)用系統(tǒng)訪問某些服務(wù)的層次;
2、限流配置不支持動態(tài)調(diào)整;
3、復(fù)雜查詢場景下流程的限流,例如1:N場景,簡單針對接口服務(wù)的限流會導(dǎo)致調(diào)用方數(shù)據(jù)不完整或者失敗;1:N場景如圖2所示,實時GMV報表由5個區(qū)域構(gòu)成,不同區(qū)域按照不同分析策略進行分析,不同區(qū)域都請求微服務(wù)A獲取數(shù)據(jù),只是入?yún)鬟f的不一致。1:N查詢場景,即下游1個完整的查詢結(jié)果包括多次微服務(wù)A的請求,這種查詢場景,如果使用現(xiàn)有方案直接針對微服務(wù)A的限流方案,則會出現(xiàn)隨機的部分區(qū)域被限流的場景,也可能存在某個區(qū)域一直被限流的情況,導(dǎo)致下游數(shù)據(jù)不完整。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種用于微服務(wù)的限流方法及裝置,針對復(fù)雜查詢場景,提供了更細粒度的限流方案。
為了實現(xiàn)上述目的,本發(fā)明的第一方面提供一種用于微服務(wù)的限流方法,包括:
針對微服務(wù)系統(tǒng)提供的微服務(wù)配置出多個限流優(yōu)先級,每個限流優(yōu)先級包括對應(yīng)的并發(fā)閾值和TPS閾值;
接收調(diào)用方系統(tǒng)的接入申請,獲取調(diào)用方系統(tǒng)對所述微服務(wù)的期望并發(fā)和期望TPS,用于匹配微服務(wù)中對應(yīng)的限流優(yōu)先級;
獲取調(diào)用方系統(tǒng)的微服務(wù)請求進行預(yù)占判斷,判斷通過后基于當前微服務(wù)請求的TPS預(yù)占數(shù)進行正式預(yù)占,并向調(diào)用方系統(tǒng)返回預(yù)占碼;
基于限流優(yōu)先級中匹配的TPS閾值以及所述預(yù)占碼和所述TPS預(yù)占數(shù),判斷是否對當前微服務(wù)請求執(zhí)行TPS限流;和/或,
基于限流優(yōu)先級中匹配的并發(fā)閾值以及當前微服務(wù)請求的并發(fā)數(shù),判斷是否對當前微服務(wù)請求執(zhí)行并發(fā)限流。
優(yōu)選地,還包括:
微服務(wù)系統(tǒng)定時跑任務(wù),根據(jù)每個調(diào)用方系統(tǒng)對微服務(wù)的訪問請求,定期更新每個調(diào)用方系統(tǒng)與微服務(wù)中匹配的限流優(yōu)先級。
優(yōu)選地,接收調(diào)用方系統(tǒng)的接入申請獲取對所述微服務(wù)的期望并發(fā)和期望TPS,用于匹配微服務(wù)中對應(yīng)的限流優(yōu)先級的方法包括:
微服務(wù)系統(tǒng)接收調(diào)用方系統(tǒng)的接入申請,所述接入申請中包括所述調(diào)用方系統(tǒng)的期望并發(fā)和期望TPS;
基于所述期望TPS,從多個限流優(yōu)先級中匹配出最接近且小于所述期望 TPS的TPS閾值,匹配出微服務(wù)中對應(yīng)的限流優(yōu)先級。
優(yōu)選地,獲取調(diào)用方系統(tǒng)的微服務(wù)請求進行預(yù)占判斷的方法包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于蘇寧云計算有限公司,未經(jīng)蘇寧云計算有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011329458.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 基于人工智能服務(wù)云平臺的微服務(wù)管理方法和系統(tǒng)
- 域名管理方法、裝置及系統(tǒng)
- 微服務(wù)通信方法、裝置、電子設(shè)備及機器可讀存儲介質(zhì)
- 微服務(wù)應(yīng)用平臺及其資源保存方法和保存裝置
- 一種微服務(wù)關(guān)聯(lián)分析與預(yù)測方法
- 微服務(wù)配置信息管理系統(tǒng)、方法、服務(wù)器及存儲介質(zhì)
- 微服務(wù)容器之間服務(wù)啟動方法、裝置、設(shè)備及存儲介質(zhì)
- 微服務(wù)組合方法、裝置、設(shè)備及存儲介質(zhì)
- 微服務(wù)接口的發(fā)布方法、裝置、電子設(shè)備和存儲介質(zhì)
- 一種大規(guī)模微服務(wù)架構(gòu)及其管理方法





