Dela via


Begränsa samtidighet

GÄLLER FÖR: Alla API Management-nivåer

Principen limit-concurrency förhindrar att omslutna principer körs med fler än det angivna antalet begäranden när som helst. När det antalet överskrids misslyckas nya begäranden omedelbart med 429 statuskoden För många begäranden.

Varning

På grund av begränsningsarkitekturens distribuerade karaktär är hastighetsbegränsningen aldrig helt korrekt. Skillnaden mellan det konfigurerade och det verkliga antalet tillåtna begäranden varierar beroende på begärandevolymen och hastigheten, svarstiden i serverdelen och andra faktorer.

Kommentar

Ange principens element och underordnade element i den ordning som anges i principbeskrivningen. Läs mer om hur du anger eller redigerar API Management-principer.

Principuttryck

<limit-concurrency key="expression" max-count="number">
        <!— nested policy statements -->
</limit-concurrency>

Attribut

Attribut beskrivning Obligatoriskt Standardvärde
key En sträng. Anger samtidighetsomfånget. Kan delas av flera principer. Principuttryck tillåts. Ja Ej tillämpligt
max-count Ett heltal. Anger ett maximalt antal begäranden som tillåts att ange principen. Principuttryck tillåts inte. Ja Ej tillämpligt

Förbrukning

Användningsanteckningar

  • Det maximala antalet begäranden som tillämpas av API Management är lägre när flera kapacitetsenheter distribueras i en region.

Exempel

I följande exempel visas hur du begränsar antalet begäranden som vidarebefordras till en serverdel baserat på värdet för en kontextvariabel.

<policies>
  <inbound>…</inbound>
  <backend>
    <limit-concurrency key="@((string)context.Variables["connectionId"])" max-count="3">
      <forward-request timeout="120"/>
    </limit-concurrency>
  </backend>
  <outbound>…</outbound>
</policies>

Mer information om hur du arbetar med principer finns i: