Ograniczanie współbieżności

DOTYCZY: Wszystkie warstwy usługi API Management

Zasady limit-concurrency uniemożliwiają wykonywanie ujęć zasad przez więcej niż określoną liczbę żądań w dowolnym momencie. Po przekroczeniu tej liczby nowe żądania natychmiast kończą się niepowodzeniem z 429 kodem stanu Zbyt wiele żądań.

Uwaga

Ustaw elementy zasad i elementy podrzędne w kolejności podanej w instrukcji zasad. Dowiedz się więcej na temat ustawiania lub edytowania zasad usługi API Management.

Instrukcja zasad

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

Atrybuty

Atrybut opis Wymagani Wartość domyślna
key Ciąg. Określa zakres współbieżności. Może być współużytkowany przez wiele zasad. Wyrażenia zasad są dozwolone. Tak Nie dotyczy
maksymalna liczba Całkowitą. Określa maksymalną liczbę żądań, które mogą wprowadzać zasady. Wyrażenia zasad nie są dozwolone. Tak Nie dotyczy

Użycie

  • Sekcje zasad: ruch przychodzący, wychodzący, zaplecze, błąd
  • Zakresy zasad: globalny, obszar roboczy, produkt, interfejs API, operacja
  • Bramy: klasyczne, v2, zużycie, self-hosted

Przykład

W poniższym przykładzie pokazano, jak ograniczyć liczbę żądań przekazywanych do zaplecza na podstawie wartości zmiennej kontekstowej.

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

Aby uzyskać więcej informacji na temat pracy z zasadami, zobacz: