[發明專利]基于接口響應時間趨勢的動態限流方法及計算機可讀介質有效
| 申請號: | 201810093219.9 | 申請日: | 2018-01-31 |
| 公開(公告)號: | CN110099009B | 公開(公告)日: | 2021-01-26 |
| 發明(設計)人: | 周忠濤;徐偉;張曉寧 | 申請(專利權)人: | 北京易真學思教育科技有限公司 |
| 主分類號: | H04L12/819 | 分類號: | H04L12/819;H04L12/853 |
| 代理公司: | 北京律遠專利代理事務所(普通合伙) 11574 | 代理人: | 丁清鵬 |
| 地址: | 100041 北京市石景山區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 接口 響應 時間 趨勢 動態 限流 方法 計算機 可讀 介質 | ||
1.一種基于接口響應時間趨勢的動態限流方法,包括:
A、對于每個對接口的訪問請求,根據接口當前的限流狀態確定對該訪問請求執行排隊操作或放行操作,并在放行該訪問請求時將該請求的接口響應時間存入響應時間隊列;
B、定時統計接口響應時間,根據接口響應時間趨勢和超時百分比確定是否對該接口開啟限流;
C、執行限流期間,根據接口響應時間趨勢動態調整令牌桶算法生成的令牌數,實時調整放行請求數;
其中,所述步驟B包括:
B1、以時間間隔Δt讀取服務器接口的新增請求數和結束請求數,計算出系統歷史最大QPS,其中,QPS為訪問接口的每秒請求數;
B2、從響應時間隊列中讀取最近N個時間間隔Δt內各訪問請求的響應時間數據,分別計算第一時間區段、第二時間區段和第三時間區段內接口響應時間超過接口響應時間閾值的訪問請求數量,得出3個時間區間內接口響應時間超時的百分比,通過3個超時百分比之間的大小關系來判斷接口響應時間的變化趨勢,其中,第一時間區段為最近X個時間間隔Δt、第二時間區段為最近Y個時間間隔Δt、第三時間區段為最近Z個時間間隔Δt,XYZ;
B3、當接口響應時間趨勢變差,并滿足開啟接口限流的觸發條件時,對動態令牌桶算法進行初始化,并將限流狀態由“未開啟限流”轉變為“開啟限流中”,結束本次統計。
2.根據權利要求1的方法,其中,所述步驟A包括:
A1、對于每個訪問請求,檢查其訪問的接口是否需要限流,如需限流轉步驟A2,不需要則轉步驟A5;
A2、檢查該訪問請求是否處于就緒隊列中,是則轉步驟A5,不是則轉步驟A3;
A3、判斷接口當前的限流狀態,如狀態為“限流開啟中”時隨機所有訪問請求的1/2放入就緒隊列,其余1/2的訪問請求放入等待隊列;如狀態為“已經開啟限流”時將全部訪問請求放入等待隊列,轉步驟A4;
A4、將被送入等待隊列限制訪問的訪問請求,重定向到等待頁面或返回json數據提示接口繁忙,結束本次訪問;之后定時向系統發起查詢請求,獲得放行許可后將該訪問請求轉移到就緒隊列重新進行訪問;
A5、放行該訪問請求,新增請求計數加1,當服務器返回響應時,將本次訪問請求的接口響應時間存入響應時間隊列中,并將結束請求計數加1,結束本次訪問。
3.根據權利要求1或2的方法,其中,所述步驟B具體為:后臺腳本定時統計接口響應時間,根據設定的接口響應時間閾值,計算出接口響應時間的變化趨勢,并根據接口響應時間的變化趨勢確定是否對接口進行限流。
4.根據權利要求1的方法,其中,開啟接口限流的觸發條件為以下一個或多個:
1)接口響應時間趨勢變差,且第一時間區間內超時百分比大于超時百分比閾值;
2)第一時間區間和第二時間區間內超時百分比均大于超時百分比閾值。
5.根據權利要求1的方法,其中,所述步驟C具體為:將所有訪問請求導入等待隊列,根據接口響應時間趨勢動態調整生成的令牌數,消耗令牌并將對應數量的請求從等待隊列轉移到就緒隊列中進行放行,實時調整允許訪問接口的請求的數量。
6.根據權利要求1的方法,其中,所述步驟C包括:
C1、開啟限流后,判斷接口響應時間趨勢是否變好,并由此確定當前QPS;
C2、根據當前QPS生成令牌,每個時間間隔Δt令牌桶中新增令牌數=當前QPS*Δt,并統計等待隊列中的請求數,每個請求消耗一個令牌,將對應數量的請求從等待隊列轉移到就緒隊列中,執行放行操作;
C3、判斷響應趨勢是否變好且超時百分比低于閾值,如是則使結束計數加1,若結束計數值大于設定值,則關閉限流,并重置歷史最大QPS為當前QPS。
7.根據權利要求6的方法,其中,所述步驟C1包括:
根據接口響應時間趨勢更新當前QPS值,如果接口響應時間趨勢變好,則當前QPS=當前QPS+基準QPS/10;如果接口響應時間趨勢變差,則當前QPS=(當前QPS+基準QPS)/2。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京易真學思教育科技有限公司,未經北京易真學思教育科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810093219.9/1.html,轉載請聲明來源鉆瓜專利網。





