通過在WAF上配置洪峰限流功能,僅允許存取固定QPS或者特定比例的流量到商務服務器,可以有效保護商務服務器在大促活動期間降低異常流量衝擊。本文介紹如何設定洪峰限流。
前提條件
已開通訂用帳戶進階版及以上版本。具體操作,請參見購買WAF 3.0訂用帳戶執行個體。
已將Web業務添加為WAF 3.0的防護對象。具體操作,請參見配置防護對象和防護對象組。
說明雲產品接入(ALB、MSE、FC)的防護對象暫不支援該功能。
建立規則模板
通過建立規則模板,可以集中管理和統一應用規則,減少了重複配置的工作量。當新防護對象需要保護時,可以快速將現有規則模板應用到新的對象上,方便擴充。
步驟一:建立洪峰限流模板
登入Web Application Firewall3.0控制台。在頂部功能表列,選擇WAF執行個體的資源群組和地區(中國內地、非中國內地)。在左側導覽列,選擇 。在頁面下方洪峰限流地區,單擊建立模板。
說明如果您是第一次建立洪峰限流模板,您也可以在防護規則頁面上方的洪峰限流卡片地區,單擊立即配置。
在建立模板 - 洪峰限流面板,完成以下配置,單擊確定。
配置項
說明
模板名稱
為該模板設定一個名稱。
長度為1~255個字元,支援中文和大小寫英文字母,可包含數字、半形句號(.)、底線(_)和短劃線(-)。
是否設定為預設範本
選擇是否將該模板設定為當前防護模組的預設範本。
一個防護模組只允許設定一個預設範本。預設範本無需設定生效對象,預設應用於所有未關聯到自訂規則模板的防護對象和對象組(包括後續新增、從自訂規則模板中移除的防護對象和對象組)。
規則配置
您可以單擊建立規則,為當前洪峰限流模板建立自訂規則;或者忽略該設定,在建立規則模板後,再為模板建立規則。關於建立自訂規則的具體操作,請參見步驟二:建立洪峰限流模板中的規則。
生效對象
從已添加的防護對象及對象組中,選擇要應用該模板的防護對象和防護對象組。
一個防護對象或對象組只能關聯到當前防護模組下的一個模板。關於添加防護對象和對象組的具體操作,請參見配置防護對象和防護對象組。
步驟二:建立洪峰限流模板中的規則
只有添加防護規則後,洪峰限流模板才具有防護作用。
在自訂規則地區,定位到要建立規則的規則模板,單擊操作列下的建立規則。在建立規則對話方塊,完成以下配置,單擊確定。
配置項 | 說明 |
規則名稱 | 為該規則設定一個名稱。 支援中文和大小寫英文字母,可包含數字、半形句號(.)、底線(_)和短劃線(-)。 |
匹配條件 | 設定該規則要匹配的請求特徵。 單擊新增條件,添加一個條件。一個規則中最多可以添加五個條件。如果定義了多個條件,則只有當多個條件同時滿足時,才算命中規則。 每個條件由匹配欄位、邏輯符和匹配內容組成。配置樣本如下:
關於匹配欄位和邏輯符的更多說明,請參見匹配條件說明。 |
同時訪問來源屬於下欄區域 | WAF可以擷取到請求的源ip,通過源ip可以判斷流量歸屬地。如果不開啟,則不區分生效對象的流量來源。在開啟狀態下,您可以選擇中國境內的地區和中國境外的國家,未被選擇的中國境內地區與境外國家的流量將不會經過洪峰限流中配置的規則。 |
限流方式 | QPS(Queries Per Second)限流:是通過設定一個固定的每秒請求數(QPS)上限來限制進入伺服器的流量。這種方法適用於需要嚴格控制請求數量以保證伺服器穩定性的情境。 百分比限流:是通過設定一個流量通過的比例來限制進入伺服器的流量。這種方法適用於需要在流量激增時動態控制請求量的情境,相對QPS限流更加靈活。 |
限流閾值 | 設定QPS限流值
說明 QPS限流值,由於技術實現的複雜性和系統內容的動態變化,實際QPS可能會在設定值附近出現10%左右的波動。這種波動是限流演算法允許的正常現象,旨在平衡系統效能和限流精度。建議定期監控實際流量表現,並根據具體需求做出相應調整,以確保最佳使用效果。 設定百分比限流值
|
限流動作 | 選擇當請求命中該規則時,要執行的防護動作。可選項:
|
生效模式 |
|
樣本1:假設您希望長期限制每秒最大請求數為1000,規則永久生效,並且只針對美國的流量進行限制,同時選擇攔截作為防護動作。
規則名稱:長期QPS限流
描述:長期限制每秒最大請求數為1000
生效模式:永久生效
最大QPS:1000
訪問來源區域:中國境外-北美洲-美國
防護動作:攔截
樣本2:假設您希望在大促期間,url包含shopping,每天的09:00到18:00限制每秒最大請求數為1000,並且只針對全部中國地區的流量進行限制,同時選擇攔截作為限流動作。
規則名稱:大促限流
描述:大促期間限流
生效模式:按時間段生效
匹配欄位:URI包含shopping
時間段:某年某月某日的09:00到某年某月某日的18:00
最大QPS:1000
訪問來源區域:全部中國地區
限流動作:攔截
應用範圍:選擇特定的業務網域名稱或路徑
樣本3:假設您希望在每周末的09:00到18:00限制每秒最大請求數為1000,並且只針對中國香港的流量進行限制,同時選擇觀察作為防護動作。
規則名稱:周末限流
描述:每周末限流
生效模式:按周期生效
周期和時間段:每周六和周日的09:00到18:00
最大QPS:1000
時區:選擇業務所在的時區或伺服器所在的時區
訪問來源區域:中國香港
限流動作:觀察
編輯規則模板
業務或專案需求可能會隨時間而變化,調整規則模板可以確保規則與當前需求保持一致。通過調整規則,可以提高系統或流程的效率和效能,減少資源浪費。
開啟與關閉規則模板
成功建立規則模板後,您可以通過模板開關,開啟或關閉模板。
更改規則模板
可以單擊目標模板操作列的編輯。完成調整後,點擊下方確認,儲存此次變更。
刪除規則模板
您可以刪除不需要的規則模板,刪除之前請確認該模板沒有關聯的防護對象。請單擊目標模板操作列中的刪除按鈕,並在彈出提示中點擊確定。
一旦模板被刪除,系統將自動使用預設範本來保護之前由該模板防護的對象。
刪除預設範本,如果預設範本中還存在防護對象,這些防護對象將不再受到洪峰限流保護。