全部產品
Search
文件中心

API Gateway:限流

更新時間:Feb 14, 2026

API 限流策略專為大模型服務及高並發調用情境設計,支援基於 Token 消耗量、請求數和並發數的多維度動態控制機制。該策略可針對消費者身份、請求 Header 參數、Query 參數、Cookie、用戶端 IP、模型名稱等多維度配置限流規則,並提供 API 層級的全域限流能力。這種多維度限流模式能精準匹配大模型計算資源消耗特性,有效防止系統過載、介面濫用及惡意調用,同時保障核心業務在複雜情境下的穩定運行。

策略說明

  • 防止資源過載:通過設定靈活的限流策略(如按消費者、Header、Query 參數、Cookie、用戶端 IP 或模型名稱),可以有效限制高頻調用或惡意請求,避免因資源過載導致系統崩潰或效能下降。同時,建議配合緩衝策略以提升系統效能。

  • 動態調整流量:支援多種限流範圍(如每秒、每分鐘、每小時、每天),可以根據業務需求靈活調整限流規則,確保系統在高並發情境下仍能穩定運行。

  • 多種匹配規則支援:限流策略支援多種匹配規則(精確匹配、首碼匹配、正則匹配、任意匹配),能夠滿足高優先順序的複雜業務情境需求。

  • 多種限流模式:支援按 Token 消耗量限流、按請求數限流和按並發數限流三種模式,滿足不同粒度的流量管控需求。

  • 模型級精細管控:支援針對不同模型名稱設定差異化的限流閾值,保護高成本模型資源。

  • 全域限流能力:支援 API 層級的全域限流(按 API 限流),作為普通規則之外的兜底策略,從整體上控制 API 的 Token 消耗、請求數和並發數。

  • 防止惡意攻擊:通過對特定消費者、Header、Query 參數、Cookie 或用戶端 IP 進行限流,可以有效限制爬蟲或自動化工具的訪問頻率,保護資料安全。

適用情境

  • 高並發情境:電商大促期間,按使用者單位時間調用 Token 總量限流,防止惡意高頻調用,保障服務穩定及活動公平。

  • AI 服務調用:對大模型 API 的調用進行限流,避免因突發流量導致服務品質下降或系統崩潰。

  • 多租戶系統:在開放平台或多租戶架構中,為不同租戶分配獨立的限流配額,確保公平性和資源隔離。

  • 模型級精細管控:針對不同模型(如 qwen-max、qwen-plus)設定差異化的 Token 限額和請求數限額,保護高成本模型資源。

  • 全域流量保護:通過 API 層級的全域限流,從整體上控制 Token 消耗總量、請求總數和最大並發數,防止 API 被過度調用。

  • 惡意攻擊防護:防範針對 AI 介面的爬蟲攻擊、DDoS 攻擊或介面濫用行為,保護系統安全。

操作步驟

  1. 開啟AI 網關控制台執行個體頁面,在頂部功能表列選擇目標執行個體所在地區,並單擊目標執行個體 ID

  2. 在左側導覽列,單擊Model API,然後單擊目標API 名稱進入API 詳情頁面。

  3. 單擊策略與外掛程式,然後開啟限流開關並配置相關參數。

說明 最多隻支援同時命中 10 條規則。

限流策略

限流策略地區用於配置具體的限流規則。每條規則由三部分組成:判斷條件限流規則(匹配方式)和限流範圍(限流模式 + 限流值 + 限流單位)。規則支援拖拽排序,可通過添加按鈕新增規則行。

配置項

說明

限流

開啟或關閉限流策略,預設關閉。

判斷條件

選擇限流維度,支援 6 種:按消費者、按請求 Header、按請求 Query 參數、按請求 Cookie、按用戶端 IP、按模型。

限流規則

根據判斷條件的不同,需要填寫不同的匹配資訊(匹配規則、參數名稱、匹配內容等),詳見下方各維度說明。

限流範圍

選擇限流的時間視窗:每秒、每分鐘、每小時、每天。

限流值

填寫限流閾值,取值範圍是1 ~ 2,147,483,647

限流單位

選擇限流的計量單位:Token請求數並發數

按消費者

根據消費者身份進行限流,適用於多租戶情境。

  • 表單項:判斷條件(按消費者)→ 匹配規則(精確匹配/首碼匹配/正則匹配/任意匹配)→ 消費者選擇 → 限流範圍 → 限流值 + 限流單位

  • 消費者選擇:從已有消費者列表中選擇,也可點擊建立消費者快速建立。選擇任意匹配時無需選擇具體消費者。

  • 樣本:任意消費者每分鐘限流 1000 Token。

重要 配置按消費者限流,需要先開啟消費者認證

按請求 Header

根據請求 Header 中的指定欄位進行限流。

  • 表單項:判斷條件(按請求 Header)→ 參數名稱(Header 欄位名)→ 匹配規則(精確匹配/首碼匹配/正則匹配/任意匹配)→ 匹配內容 → 限流範圍 → 限流值 + 限流單位

  • 參數名稱:必填,輸入需要匹配的 Header 欄位名。

  • 匹配內容:選擇任意匹配時無需填寫。

  • 樣本:限制 Header 中 x-user-level 值為 beta 的請求,每分鐘限流 100 Token。

按請求 Query 參數

根據請求 URL 中的 Query 參數進行限流。

  • 表單項:判斷條件(按請求 Query 參數)→ 參數名稱(Query 參數名)→ 匹配規則(精確匹配/首碼匹配/正則匹配/任意匹配)→ 匹配內容 → 限流範圍 → 限流值 + 限流單位

  • 參數名稱:必填,輸入需要匹配的 Query 參數名。

  • 匹配內容:選擇任意匹配時無需填寫。

  • 樣本:限制 Query 參數中 user_id=1 的請求,每分鐘限流 100 Token。

按請求 Cookie

根據請求 Cookie 中的指定欄位進行限流。

  • 表單項:判斷條件(按請求 Cookie)→ 參數名稱(Cookie 欄位名)→ 匹配規則(精確匹配/首碼匹配/正則匹配/任意匹配)→ 匹配內容 → 限流範圍 → 限流值 + 限流單位

  • 參數名稱:必填,輸入需要匹配的 Cookie 欄位名。

  • 匹配內容:選擇任意匹配時無需填寫。

  • 樣本:限制 Cookie 中帶有目標標識的請求,每分鐘限流 100 Token。

按用戶端 IP

根據用戶端 IP 位址進行限流,支援單個 IP 和 IP 段。

  • 表單項:判斷條件(按用戶端 IP)→ IP 位址 → 限流值 + 限流單位

  • IP 位址:輸入需要限流的 IP 位址(如 192.168.1.1)或 IP 段(如 192.168.1.0/24)。填寫 0.0.0.0/0 表示匹配所有用戶端 IP。

  • 樣本:限制每個用戶端 IP 最大並發數為 50。

說明 按用戶端 IP 限流無需選擇匹配規則和限流範圍,系統會自動處理。

按模型

針對特定模型名稱設定獨立的限流閾值,適用於多模型服務情境。

  • 表單項:判斷條件(按模型)→ 匹配規則(精確匹配,固定不可更改)→ 模型名稱 → 限流值 + 限流單位

  • 模型名稱:必填,輸入需要限流的目標模型名稱。

  • 限流單位:支援 Token請求數並發數三種。

  • 樣本qwen-max 每分鐘限流 500 Token,同時限制最大並發數為 10。

說明 按模型限流固定使用精確匹配。如果需要更靈活的模型匹配(如首碼匹配、正則匹配),可以使用"按請求 Header"並手動指定參數名稱為 x-higress-llm-model

按 API 限流(全域限流)

按 API 限流是獨立於上述限流策略之外的兜底策略,對整個 API 進行全域限流,不區分具體的判斷條件。

  • 啟用方式:勾選按 API 限流地區的開啟複選框。

  • 表單項:限流範圍(每秒/每分鐘/每小時/每天)→ 限流值 + 限流單位(Token/請求數/並發數)

  • 支援添加多條:可通過添加按鈕新增多條全域限流規則,分別設定不同的限流模式。

  • 樣本:整個 API 每分鐘最多消耗 10000 Token,每分鐘最多 100 次請求,最大並發數為 20。

說明 按 API 限流為上述策略之外的兜底策略。全域限流和普通規則可以同時使用,兩者疊加生效,命中任一規則即觸發限流。
  1. 確認配置資訊並單擊儲存

匹配規則

按消費者、按請求 Header、按請求 Query 參數、按請求 Cookie 四種判斷條件支援以下四種匹配規則,優先順序:精確匹配 > 首碼匹配 > 正則匹配 > 任意匹配。

匹配規則

說明

樣本

精確匹配

匹配值與目標值完全相同

Header x-user-level 精確等於 beta

首碼匹配

匹配值以指定首碼開頭

Header x-user-levelvip 開頭

正則匹配

匹配值符合指定Regex

Header x-user-level 匹配 `^(gold

任意匹配

匹配該維度下的所有值,無需填寫匹配內容

任意消費者均適用

說明 如果配置了多條規則,則命中任一規則即被攔截。按用戶端 IP 和按模型有各自固定的匹配方式,無需手動選擇匹配規則。

限流單位與限流模式

每條限流規則的限流值後面可以選擇限流單位,不同的限流單位對應不同的計量方式:

限流單位

說明

適用的判斷條件

Token

按大模型的傳入傳出 Token 消耗量計算

所有判斷條件

請求數

按請求次數計算

所有判斷條件

並發數

按同時處理的請求數量計算

所有判斷條件

限流策略支援以下限流範圍(時間視窗),與限流單位組合使用:

限流範圍

Token 限流

請求數限流

並發數限流

每秒

每秒允許消耗的最大 Token 數

每秒允許的最大請求次數

每分鐘

每分鐘允許消耗的最大 Token 數

每分鐘允許的最大請求次數

每小時

每小時允許消耗的最大 Token 數

每小時允許的最大請求次數

每天

每天允許消耗的最大 Token 數

每天允許的最大請求次數

(無時間視窗)

允許同時處理的最大請求數

說明 並發數限流不需要選擇限流範圍(時間視窗),直接設定最大並發數即可。限流值的取值範圍為 1 ~ 2,147,483,647

配置樣本

樣本一:按消費者 Token 限流 + 按用戶端 IP 並發限流

配置兩條規則:任意消費者每分鐘限流 1000 Token,每個用戶端 IP 最大並發數 50。

序號

判斷條件

匹配規則

參數名稱/匹配內容

限流範圍

限流值

限流單位

1

按消費者

任意匹配

每分鐘

1000

Token

2

按用戶端 IP

0.0.0.0/0

50

並發數

樣本二:按請求 Header 限流(多種匹配規則)

針對不同 Header 值設定差異化限流規則:

序號

判斷條件

參數名稱

匹配規則

匹配內容

限流範圍

限流值

限流單位

1

按請求 Header

x-user-level

精確匹配

beta

每分鐘

100

Token

2

按請求 Header

x-user-level

首碼匹配

vip

每小時

5000

Token

3

按請求 Header

x-app-id

任意匹配

每分鐘

50

請求數

樣本三:按模型名稱差異化限流

針對不同模型設定差異化限流:qwen-max 每分鐘限流 500 Token 且最大並發 10,qwen-plus 每分鐘限流 2000 Token。

序號

判斷條件

匹配規則

模型名稱

限流範圍

限流值

限流單位

1

按模型

精確匹配

qwen-max

每分鐘

500

Token

2

按模型

精確匹配

qwen-plus

每分鐘

2000

Token

3

按模型

精確匹配

qwen-max

10

並發數

樣本四:按 API 限流(全域限流)+ 消費者限流組合

在消費者限流基礎上,開啟按 API 限流作為兜底策略:

限流策略(普通規則)

序號

判斷條件

匹配規則

限流範圍

限流值

限流單位

1

按消費者

任意匹配

每分鐘

1000

Token

按 API 限流(全域規則,勾選"開啟")

序號

限流範圍

限流值

限流單位

1

每分鐘

10000

Token

2

每分鐘

100

請求數

3

20

並發數

說明 按 API 限流為上述策略之外的兜底策略,需要單獨勾選"開啟",與普通規則獨立配置。

樣本五:混合多維度限流

同時配置多種判斷條件的限流規則:

序號

判斷條件

參數名稱

匹配規則

匹配內容/IP/模型名稱

限流範圍

限流值

限流單位

1

按消費者

精確匹配

consumer-001

每分鐘

500

Token

2

按請求 Header

x-user-level

首碼匹配

vip

每小時

10000

Token

3

按請求 Query 參數

user_id

正則匹配

^[0-9]+$

每分鐘

200

請求數

4

按請求 Cookie

session

任意匹配

每分鐘

100

請求數

5

按用戶端 IP

192.168.1.0/24

30

並發數

6

按模型

精確匹配

qwen-max

每分鐘

1000

Token

常見問題

Q:最多可以配置多少條限流規則?

A:最多隻支援同時命中 10 條規則。您可以根據業務需求靈活組合不同維度規則,但建議控制規則數量以確保效能。

Q:多條規則之間的關係是什嗎?

A:多條規則之間的關係為,即命中任一規則即觸發限流。相同限流維度(相同判斷條件 + 匹配鍵)的規則會被合并到同一個規則群組中執行。

Q:按 API 限流和普通限流規則可以同時使用嗎?

A:可以。按 API 限流(全域規則)作為普通規則之外的兜底策略,作用於整個 API 層級,不區分具體的 key;普通規則按維度細分限流。兩者可以疊加使用,任一規則引發即執行限流。

Q:按模型限流和按請求 Header 限流有什麼區別?

A:按模型限流時,系統會自動將其轉換為基於 x-higress-llm-model Header 的精確匹配限流。如果需要更靈活的模型匹配(如首碼匹配、正則匹配),可以使用按請求 Header 限流並手動指定參數名稱為 x-higress-llm-model

Q:Token、請求數和並發數三種限流單位可以組合使用嗎?

A:可以。同一個判斷條件下可以添加多條規則,分別選擇不同的限流單位。例如,針對同一個模型既可以設定每分鐘 Token 限額,也可以設定最大並發數限額,兩者獨立計數,命中任一即觸發限流。

Q:按用戶端 IP 限流為什麼沒有匹配規則和限流範圍選項?

A:按用戶端 IP 限流的表單經過簡化設計,只需輸入 IP 位址或 IP 段即可。系統會自動處理匹配邏輯。如果需要對所有用戶端 IP 進行限流,可以輸入 0.0.0.0/0

Q:規則的順序是否影響限流效果?

A:規則支援拖拽排序,但多條規則之間的關係為,命中任一規則即觸發限流,因此規則順序不影響最終的限流效果。

Q:更新限流配置後多久生效?

A:更新配置後,系統會自動將新的限流規則推送到網關資料面,通常在幾秒內生效。

Q:限流在分布式架構下的準確性如何?

A:由於分布式架構的特性,限流計數可能存在輕微偏差。實際允許的請求數與配置數會因請求量、速率、後端延遲等因素產生差異。