為網關應用配置網關流控規則后,AHAS將從流量入口處攔截激增的流量,防止下游服務被壓垮。本文將介紹如何為已接入AHAS的網關應用配置網關流控規則。
新建網關流控規則
- 登錄AHAS控制臺,然后在頁面左上角選擇地域。
- 在控制臺左側導航欄中選擇 。
- 在網關防護頁面單擊目標應用卡片。
- 單擊目標網關應用卡片,然后任選一種方式進入API流控規則的配置頁面:
- 在接口詳情頁面,單擊API資源卡片右上角的加號圖標。
- 在左側導航欄中單擊API流控規則,然后在頁面右上角單擊新增流控規則。
- 在新增流控規則對話框中,配置流控規則。
參數 描述 API 選擇適用該規則的自定義API,或者手動輸入路由配置文件中的Route ID。 針對請求屬性 - 關閉針對請求屬性開關:不針對請求屬性(如Client IP,URL參數等)進行限流,直接針對該API的所有請求進行流量控制。
- 開啟針對請求屬性開關:針對該API的某個請求屬性進行限流,可以選擇參數屬性。
可以根據以下屬性進行流量控制:
- Client IP:請求端的IP地址。
- Remote Host:請求端的Host Header。
- Header:根據指定的HTTP Header進行解析,匹配對應的Header Key。選擇Header后,可以配置請求屬性值的匹配策略,只有匹配該模式的請求屬性值會納入統計和流控。
- URL參數:根據指定的HTTP URL參數進行解析,需要填寫對應的參數名稱。選擇URL參數后,可以配置請求屬性值的匹配策略,只有匹配該模式的請求屬性值會納入統計和流控。
- 匹配模式
- 精確:嚴格按照給定的匹配串來匹配值。
- 子串:若請求屬性值包含該子串則匹配成功,如子串匹配
ab
,則aba
和cabc
都可以匹配,而cba
則不能匹配。 - 正則:按照給定的正則表達式匹配串來進行匹配。
閾值類型 - QPS:應用或服務流量的QPS指標。選擇QPS后,還需設置QPS閾值和統計間隔(支持秒、分鐘、小時、天4種維度)。
例如,QPS閾值填寫10,統計間隔選擇分,則代表每分鐘對應的請求數目不超過10個。
- 線程數:資源的并發線程數,即該資源正在執行的線程數。說明 開啟針對請求屬性開關后,暫時不支持線程數作為閾值類型。
流控方式 - 快速失敗:當閾值類型為QPS時,被攔截的流量將快速失敗。即達到閾值時,立即攔截請求。
- 勻速排隊:當閾值類型為QPS時,被攔截的請求將勻速通過,允許排隊等待。
需設置具體的超時時間,預計達到超時時間的請求會立即失敗,而不會排隊。
例如,QPS配置為10,則代表請求每100 ms才能通過一個,多出的請求將排隊等待通過。超時時間代表最大排隊時間,超出最大排隊時間的請求將會直接被拒絕。
說明 勻速排隊時,QPS不要超過1000(請求間隔1 ms)。
Burst size 當流控方式為快速失敗時,可以額外設置一個Burst Size,即針對突發請求額外允許的請求數目。 超時時間 當流控方式為勻速排隊時,需設置具體的超時時間,達到超時時間后請求會失敗。例如,QPS配置為5,則代表請求每200 ms才能通過一個,多出的請求將排隊等待通過。超時時間代表最大排隊時間,超出最大排隊時間的請求將會直接被拒絕。 - 單擊新增。
新增的規則將出現在API流控規則頁面。
管理流控規則
在流控規則頁面,您可以啟用、禁用、編輯或刪除流控規則。
- 單流控規則啟用或禁用:
在流控規則頁面,找到目標資源下對應的流控規則,單擊狀態欄的啟用開關,可快速啟用或禁用該規則。
- 多流控規則批量啟用或禁用:
在流控規則頁面,勾選多個流控規則,單擊批量啟用或批量禁用,可快速啟用或禁用多個規則。
- 編輯規則:
在流控規則頁面,找到目標資源下對應的流控規則,單擊操作欄的編輯,可修改該規則的相關信息。
- 刪除規則:
在流控規則頁面,找到目標資源下對應的流控規則,單擊操作欄的刪除。
文檔內容是否對您有幫助?