Table of contents

제한 지침 | Graph API 개념Throttling guidance | Graph API concepts

Pat Altimore|마지막 업데이트: 2018-06-19
|
2 기고자
중요

Azure Active Directory 리소스에 액세스하려면 Azure AD Graph가 아닌 Microsoft Graph를 사용하는 것이 좋습니다.We strongly recommend that you use Microsoft Graph instead of Azure AD Graph API to access Azure Active Directory resources.우리는 현재 Microsoft Graph 개발에 집중하고 있으며 앞으로 Azure AD Graph API에 대한 개선 작업은 계획이 없습니다.Our development efforts are now concentrated on Microsoft Graph and no further enhancements are planned for Azure AD Graph API.아직까지 Azure AD Graph API가 적합할 수 있는 시나리오는 매우 제한적입니다. 자세한 내용은 Office 개발자 센터의 Microsoft Graph 또는 Azure AD Graph 블로그 게시물을 참조하십시오.There are a very limited number of scenarios for which Azure AD Graph API might still be appropriate; for more information, see the Microsoft Graph or the Azure AD Graph blog post in the Office Dev Center.

제한이란 무엇일까요?What is throttling?

제한은 리소스 과다 사용을 방지하기 위해 서비스에 대한 동시 호출 수를 제한합니다.Throttling limits the number of concurrent calls to a service to prevent overuse of resources.Azure AD(Active Directory) Graph는 매우 많은 양의 요청을 처리하도록 설계되었습니다.Azure Active Directory (AD) Graph is designed to handle a very high volume of requests.요청의 수가 너무 많을 경우 제한은 Azure AD Graph 서비스의 성능과 안정성을 유지하는 데 도움이 됩니다.In the event of an overwhelming number of requests, throttling helps maintain optimal performance and reliability of the Azure AD Graph service.

제한 한계는 시나리오에 따라 다릅니다.Throttling limits vary based on the scenario.예를 들어 테넌트에 많은 양의 쓰기를 수행하는 경우는 읽기만 수행할 경우에 비해 제한 가능성이 높습니다.For example, if you are performing a large volume of writes to your tenant, the possibility for throttling is higher than if you are only performing reads.

제한이 발생하면 어떤 작업이 수행될까요?What happens when throttling occurs?

제한 임계값이 초과되면 Azure AD Graph는 제한이 적용 중일 때 해당 클라이언트의 추가 요청을 모두 제한합니다.When a throttling threshold is exceeded, Azure AD Graph limits any further requests from that client while the throttle is in effect.제한되는 경우 Azure AD Graph는 HTTP 상태 코드 429("요청이 너무 많음")를 반환하고 요청이 실패합니다.When throttled, Azure AD Graph returns HTTP status code 429 ("Too many requests"), and the requests fail.제한 동작은 요청의 유형 및 수에 따라 다를 수 있습니다.Throttling behavior can be dependent on the type and number of requests.예를 들어 요청의 양이 매우 많은 경우에는 모든 요청 유형이 제한됩니다.For example, if you have a very high volume of requests, all requests types are throttled.제한 한계는 요청 유형에 따라 다릅니다.Threshold limits vary based on the request type.따라서 쓰기가 제한되지만 읽기는 허용되는 시나리오가 발생할 수 있습니다.Therefore, you could encounter a scenario where writes are throttled but reads are still permitted.

일반적인 제한 시나리오Common throttling scenarios

클라이언트 제한의 가장 일반적인 원인에는 다음이 포함됩니다.The most common causes of throttling of clients include:

  • 테넌트의 모든 응용 프로그램에 대해 많은 수의 요청.A large number of requests across all applications in a tenant.
  • 모든 테넌트 중 특정 응용 프로그램의 많은 수의 요청.A large number of requests from a particular application across all tenants.

제한 처리 모범 사례Best practices to handle throttling

  • 요청당 작업 수 줄이기.Reduce the number of operations per request.
  • 호출 빈도 줄이기.Reduce the frequency of calls.
  • HTTP 오류 코드 429로 요청이 실패하면 Retry-After 응답 헤더 필드에 지정된 시간(초) 동안 기다린 후 요청을 다시 시도합니다.When requests fail with a HTTP error code 429, wait the number of seconds specified in the Retry-After response header field and retry the request.

오류 처리를 구현할 때 HTTP 오류 코드 429를 사용하여 제한을 감지합니다.When implementing error handling, use the HTTP error code 429 to detect throttling.실패한 응답의 응답 헤더에는 Retry-After 필드가 포함됩니다.The failed response will include the Retry-After field in the response header.

  1. Retry-After 필드에 지정된 시간(초) 동안 기다립니다.Wait the number of seconds specified in the Retry-After field.
  2. 요청을 다시 시도합니다.Retry the request.
  3. 요청이 다시 429 오류 코드로 실패하는 경우는 아직 제한되는 경우이므로 성공할 때까지 계속해서 권장 Retry-After 지연 시간을 사용하고 요청을 다시 시도합니다.If the request fails again with a 429 error code, you are still being throttled, continue to use the recommended Retry-After delay and retry the request until it succeeds.

AAD Graph는 클라이언트가 제한되는 동안 계속 리소스 사용량을 로그하므로 제한에서 복구하는 가장 빠른 방법은 Retry-After 지연을 사용하여 요청을 늦추는 것입니다.Backing off requests using the Retry-After delay is the fastest way to recover from throttling because AAD Graph continues to log resource usage while a client is being throttled.모든 요청은 사용량 제한에 누적되므로 즉각적인 다시 시도는 피해야 합니다.You should avoid immediate retries since all requests accrue against your usage limits.

Microsoft 클라우드에서의 제한에 대한 더 다양한 정보는 제한 패턴을 참조하세요.For a broader discussion of throttling on the Microsoft Cloud, see Throttling Pattern.

© 2018 Microsoft