적용 대상: 모든 API Management 계층
limit-concurrency
정책은 포함된 정책이 한 번에 지정된 개수보다 많은 요청을 실행할 수 없도록 차단합니다. 해당 숫자가 초과되는 경우 새 요청이 429
요청이 너무 많음 상태 코드를 나타내며 즉시 실패합니다.
주의
제한 아키텍처의 분산 특성으로 인해 속도 제한은 완전히 정확하지 않습니다. 구성된 허용된 요청 수와 실제 수 간의 차이는 요청 볼륨 및 속도, 백 엔드 대기 시간 및 기타 요인에 따라 달라집니다.
참고 항목
정책 문에 제공된 순서대로 정책의 요소 및 자식 요소를 설정합니다. API Management 정책을 설정하거나 편집하는 방법에 대해 자세히 알아봅니다.
정책 문
<limit-concurrency key="expression" max-count="number">
<!— nested policy statements -->
</limit-concurrency>
특성
특성 | 설명 | 필수 항목 | 기본값 |
---|---|---|---|
열쇠 | 문자열입니다. 동시성 범위를 지정합니다. 여러 정책에서 공유될 수 있습니다. 정책 식이 허용됩니다. | 예 | 해당 없음 |
max-count | 정수입니다. 정책에 들어올 수 있는 요청의 최대 수를 지정합니다. 정책 식은 허용되지 않습니다. | 예 | 해당 없음 |
사용
- 정책 섹션: inbound, outbound, backend, on-error
- 정책 범위: 전역, 작업 영역, 제품, API, 작업
- 게이트웨이: 클래식, v2, 사용량, 자체 호스팅, 작업 영역
사용법 참고 사항
- 지역에 여러 용량 단위를 배포할 때 API Management에서 적용하는 최대 요청 수는 더 낮습니다.
예시
다음 예제에서는 컨텍스트 변수 값에 따라 백 엔드로 전달되는 요청 수를 제한하는 방법을 보여 줍니다.
<policies>
<inbound>…</inbound>
<backend>
<limit-concurrency key="@((string)context.Variables["connectionId"])" max-count="3">
<forward-request timeout="120"/>
</limit-concurrency>
</backend>
<outbound>…</outbound>
</policies>
관련 정책
관련 콘텐츠
정책 작업에 대한 자세한 내용은 다음을 참조하세요.
- 자습서: API 변환 및 보호
- 정책 문 및 해당 설정에 대한 전체 목록에 대한 정책 참조
- 정책 식
- 정책 설정 또는 편집
- 정책 구성 재사용
- 정책 코드 조각 리포지토리
- 정책 플레이그라운드 리포지토리
- Azure API Management 정책 도구 키트
- Copilot 지원을 받아 정책을 만들고, 설명하며, 문제를 해결하세요.