Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
PLATÍ PRO: Všechny úrovně služby API Management
Tato rate-limit zásada zabraňuje špičkám využití rozhraní API na základě předplatného omezením četnosti volání na zadané číslo za zadané časové období. Při překročení míry volání obdrží volající stavový 429 Too Many Requests kód odpovědi.
Pokud chcete porozumět rozdílu mezi limity sazeb a kvótami, přečtěte si téma Omezení rychlosti a kvóty.
Upozornění
Vzhledem k distribuované povaze architektury omezování není omezování rychlosti nikdy zcela přesné. Rozdíl mezi nakonfigurovaným počtem povolených požadavků a skutečným číslem se liší v závislosti na objemu a rychlosti požadavků, latenci back-endu a dalších faktorech.
Poznámka:
Nastavte prvky zásad a podřízené prvky v pořadí uvedeném v prohlášení o zásadách. Přečtěte si další informace o tom, jak nastavit nebo upravit zásady služby API Management.
Prohlášení o zásadách
<rate-limit calls="number" renewal-period="seconds" retry-after-header-name="custom header name, replaces default 'Retry-After'"
retry-after-variable-name="policy expression variable name"
remaining-calls-header-name="header name"
remaining-calls-variable-name="policy expression variable name"
total-calls-header-name="header name">
<api name="API name" id="API id" calls="number" renewal-period="seconds" >
<operation name="operation name" id="operation id" calls="number" renewal-period="seconds" />
</api>
</rate-limit>
Atributy
| Atribut | Popis | Požaduje se | Výchozí |
|---|---|---|---|
| volá | Maximální celkový počet volání povolených během časového intervalu zadaného v renewal-period. Výrazy zásad nejsou povolené. |
Ano | – |
| období prodloužení | Délka v sekundách posuvného okna, během kterého by počet povolených požadavků neměl překročit hodnotu zadanou v calls. Maximální povolená hodnota: 300 sekund. Výrazy zásad nejsou povolené. |
Ano | – |
| retry-after-header-name | Název vlastní hlavičky odpovědi, jejíž hodnota je doporučený interval opakování v sekundách po překročení zadané četnosti volání. Výrazy zásad nejsou povolené. | Ne | Retry-After |
| retry-after-variable-name | Název proměnné, která ukládá doporučený interval opakování v sekundách po překročení zadané četnosti volání. Výrazy zásad nejsou povolené. | Ne | – |
| remaining-calls-header-name | Název hlavičky odpovědi, jejíž hodnota po každém spuštění zásady je počet zbývajících volání povolených pro časový interval zadaný v sadě renewal-period. Výrazy zásad nejsou povolené. |
Ne | – |
| remaining-calls-variable-name | Název proměnné, která po každém spuštění zásady ukládá počet zbývajících volání povolených pro časový interval zadaný v sadě renewal-period. Výrazy zásad nejsou povolené. |
Ne | – |
| total-calls-header-name | Název hlavičky odpovědi, jejíž hodnota je hodnota zadaná v calls. Výrazy zásad nejsou povolené. |
Ne | – |
Elementy
| Element (Prvek) | Popis | Požaduje se |
|---|---|---|
| API | Přidejte jeden nebo více těchto prvků, aby se pro rozhraní API v rámci produktu uložil limit četnosti volání. Limity četnosti volání produktů a rozhraní API se uplatňují nezávisle. Na rozhraní API lze odkazovat prostřednictvím name nebo id. Pokud jsou k dispozici oba atributy, id budou použity a name budou ignorovány. |
Ne |
| provoz | Přidejte jeden nebo více těchto prvků pro omezení četnosti volání pro operace v rámci rozhraní API. Limity četnosti volání produktů, rozhraní API a operací se uplatňují nezávisle na sobě. Operaci lze odkazovat buď prostřednictvím name , nebo id. Pokud jsou k dispozici oba atributy, id budou použity a name budou ignorovány. |
Ne |
atributy rozhraní API
| Atribut | Popis | Požaduje se | Výchozí |
|---|---|---|---|
| název | Název rozhraní API, pro které se má použít limit rychlosti. | Musí name být zadána nebo id musí být zadána. |
– |
| ID | ID rozhraní API, pro které se má použít limit rychlosti. | Musí name být zadána nebo id musí být zadána. |
– |
| volá | Maximální celkový počet volání povolených během časového intervalu zadaného v renewal-period. Výrazy zásad nejsou povolené. |
Ano | – |
| období prodloužení | Délka v sekundách posuvného okna, během kterého by počet povolených požadavků neměl překročit hodnotu zadanou v calls. Maximální povolená hodnota: 300 sekund. Výrazy zásad nejsou povolené. |
Ano | – |
atributy operace
| Atribut | Popis | Požaduje se | Výchozí |
|---|---|---|---|
| název | Název operace, pro kterou se má použít limit rychlosti. | Musí name být zadána nebo id musí být zadána. |
– |
| ID | ID operace, pro kterou se má použít limit rychlosti. | Musí name být zadána nebo id musí být zadána. |
– |
| volá | Maximální celkový počet volání povolených během časového intervalu zadaného v renewal-period. Výrazy zásad nejsou povolené. |
Ano | – |
| období prodloužení | Délka v sekundách posuvného okna, během kterého by počet povolených požadavků neměl překročit hodnotu zadanou v calls. Maximální povolená hodnota: 300 sekund. Výrazy zásad nejsou povolené. |
Ano | – |
Využití
- Oddíly zásad: příchozí
- Rozsahy zásad: produkt, rozhraní API, operace
- Brány: Classic, v2, consumption, self-host, workspace
Poznámky k využití
- Tuto zásadu lze použít pouze jednou pro každou definici zásady.
- Tato zásada se použije jenom v případě, že k rozhraní API přistupujete pomocí klíče předplatného.
- Počty omezení rychlosti v bráně v místním prostředí je možné nakonfigurovat tak, aby se synchronizovaly místně (mezi instancemi bran napříč uzly clusteru), například prostřednictvím nasazení chartu Helm pro Kubernetes nebo pomocí šablon nasazení webu Azure Portal. Počty omezení rychlosti se ale nesynchronizují s jinými prostředky brány nakonfigurovanými v instanci služby API Management, včetně spravované brány v cloudu. Další informace
- Tato zásada sleduje volání nezávisle na každé bráně, ve které se používá, včetně bran pracovních prostorů a regionálních bran v nasazení ve více oblastech. Neagreguje data volání napříč celou instancí.
Příklad
V následujícím příkladu je limit sazby za předplatné 20 volání za 90 sekund. Po každém spuštění zásad jsou zbývající volání povolená v časovém období uložena v proměnné remainingCallsPerSubscription.
<policies>
<inbound>
<base />
<rate-limit calls="20" renewal-period="90" remaining-calls-variable-name="remainingCallsPerSubscription"/>
</inbound>
<outbound>
<base />
</outbound>
</policies>
Související zásady
Související obsah
Další informace o práci se zásadami najdete v tématech:
- Kurz: Transformace a ochrana rozhraní API
- Referenční informace o zásadách pro úplný seznam prohlášení o zásadách a jejich nastavení
- Výrazy zásad
- Nastavení nebo úprava zásad
- Opakované použití konfigurací zásad
- Úložiště fragmentů zásad
- Úložiště dětského hřiště zásad
- Sada nástrojů zásad služby Azure API Management
- Získejte asistenci Copilotu při vytváření, vysvětlování a řešení problémů se zásadami.