Einschränken der Parallelität durch
GILT FÜR: Alle API Management-Ebenen
Die Richtlinie limit-concurrency
verhindert die Ausführung der eingeschlossenen Richtlinien durch mehr als die angegebene Anzahl von Anforderungen gleichzeitig. Wenn diese Anzahl überschritten wird, tritt bei neuen Anforderungen sofort ein Fehler mit dem Statuscode „429
– Too Many Requests“ (Zu viele Anforderungen) auf.
Achtung
Da die Einschränkungsarchitektur verteilt ist, ist die Begrenzung der Rate nie ganz genau. Die Differenz zwischen der konfigurierten und der tatsächlichen Anzahl zugelassener Anforderungen variiert basierend auf Anforderungsvolumen und -rate, Back-End-Latenz und anderen Faktoren.
Hinweis
Legen Sie die Elemente und untergeordneten Elemente einer Richtlinie in der Reihenfolge fest, die in der Richtlinienanweisung angegeben ist. Erfahren Sie mehr darüber, wie Sie API Management-Richtlinien festlegen oder bearbeiten.
Richtlinienanweisung
<limit-concurrency key="expression" max-count="number">
<!— nested policy statements -->
</limit-concurrency>
Attribute
Attribut | BESCHREIBUNG | Erforderlich | Standard |
---|---|---|---|
Schlüssel | Eine Zeichenfolge. Gibt den Bereich der Parallelität an. Kann von mehreren Richtlinien verwendet werden. Richtlinienausdrücke sind zulässig. | Ja | – |
max-count | Eine ganze Zahl. Gibt eine maximale Anzahl von Anforderungen an, die an die Richtlinie weitergeleitet werden können Richtlinienausdrücke sind nicht zulässig. | Ja | – |
Verwendung
- Richtlinienabschnitte: inbound, outbound, backend, on-error
- Richtlinienbereiche: global, Arbeitsbereich, Produkt, API, Vorgang
- Gateways: klassisch, v2, Verbrauch, selbstgehostet, Arbeitsbereich
Hinweise zur Verwendung
- Die maximale Anzahl von Anforderungen, die von API Management erzwungen werden, ist niedriger, wenn in einer Region mehrere Kapazitätseinheiten bereitgestellt werden.
Beispiel
Das folgende Beispiel veranschaulicht das Beschränken der Anzahl der Anforderungen, die an ein Back-End weitergeleitet werden, basierend auf dem Wert einer Kontextvariable.
<policies>
<inbound>…</inbound>
<backend>
<limit-concurrency key="@((string)context.Variables["connectionId"])" max-count="3">
<forward-request timeout="120"/>
</limit-concurrency>
</backend>
<outbound>…</outbound>
</policies>
Verwandte Richtlinien
Zugehöriger Inhalt
Weitere Informationen zum Arbeiten mit Richtlinien finden Sie hier:
- Tutorial: Transformieren und Schützen Ihrer API
- Unter Richtlinien für die API-Verwaltung finden Sie eine komplette Liste der Richtlinienanweisungen und der zugehörigen Einstellungen.
- Richtlinienausdrücke
- Festlegen oder Bearbeiten von Richtlinien
- Wiederverwenden von Richtlinienkonfigurationen
- Repository für Richtliniencodeausschnitte
- Azure API Management-Richtlinientoolkit
- Erstellen von Richtlinien mit Microsoft Copilot in Azure