Table of contents

Guía sobre la limitación | Conceptos de la API GraphThrottling guidance | Graph API concepts

Pat Altimore|Última actualización: 19/03/2018
|
2 Colaboradores
Importante

Se recomienda encarecidamente que utilice Microsoft Graph en lugar de la API de Azure AD Graph para tener acceso a recursos de Azure Active Directory.We strongly recommend that you use Microsoft Graph instead of Azure AD Graph API to access Azure Active Directory resources.Nuestros esfuerzos de desarrollo se concentran ahora en Microsoft Graph y no están previstas mejoras adicionales para la API de Azure AD Graph.Our development efforts are now concentrated on Microsoft Graph and no further enhancements are planned for Azure AD Graph API.Hay un número muy limitado de escenarios para los que la API de Azure AD Graph todavía podría ser adecuada; para más información, vea la entrada del blog Microsoft Graph o Azure AD Graph en el centro de desarrollo de Office.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.

¿Qué es la limitación?What is throttling?

La limitación establece un tope en el número de llamadas simultáneas a un servicio para evitar el uso excesivo de recursos.Throttling limits the number of concurrent calls to a service to prevent overuse of resources.Azure Active Directory (AD) Graph está diseñado para administrar un volumen muy alto de solicitudes.Azure Active Directory (AD) Graph is designed to handle a very high volume of requests.En el caso de un número gigantesco de solicitudes, la limitación ayuda a mantener el rendimiento óptimo y la confiabilidad del servicio 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.

Los límites establecidos varían según el escenario.Throttling limits vary based on the scenario.Por ejemplo, si va a realizar un gran número de escrituras en el inquilino, la posibilidad de limitación es mayor que si solo realiza lecturas.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.

¿Qué ocurre cuando tiene lugar la limitación?What happens when throttling occurs?

Cuando se sobrepasa un umbral de limitación, Azure AD Graph limita las solicitudes cliente adicionales mientras la limitación está vigente.When a throttling threshold is exceeded, Azure AD Graph limits any further requests from that client while the throttle is in effect.Cuando se aplica la limitación, Azure AD Graph devuelve el código de estado HTTP 429 ("Demasiadas solicitudes") y la solicitud da error.When throttled, Azure AD Graph returns HTTP status code 429 ("Too many requests"), and the requests fail.El comportamiento de limitación puede depender del tipo y el número de solicitudes.Throttling behavior can be dependent on the type and number of requests.Por ejemplo, si tiene un volumen muy elevado de solicitudes, se limitan todos los tipos de solicitudes.For example, if you have a very high volume of requests, all requests types are throttled.Los límites del umbral pueden variar en función del tipo de solicitud.Threshold limits vary based on the request type.Por lo tanto, podría encontrar un escenario donde se limitan escrituras pero todavía se permiten lecturas.Therefore, you could encounter a scenario where writes are throttled but reads are still permitted.

Escenarios comunes de limitaciónCommon throttling scenarios

Las causas más comunes de la limitación de los clientes son:The most common causes of throttling of clients include:

  • Un gran número de solicitudes en todas las aplicaciones de un inquilino.A large number of requests across all applications in a tenant.
  • Un gran número de solicitudes de una aplicación determinada en todos los inquilinos.A large number of requests from a particular application across all tenants.

Procedimientos recomendados para tratar con las limitacionesBest practices to handle throttling

  • Reducir el número de operaciones por solicitud.Reduce the number of operations per request.
  • Reducir la frecuencia de llamadas.Reduce the frequency of calls.
  • Cuando una solicitud genere un código de error HTTP 429, espere el número de segundos especificado en el campo de encabezado de respuesta Retry-After y reintente la solicitud.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.

Al implementar el control de errores, use el código de error HTTP 429 para detectar la limitación.When implementing error handling, use the HTTP error code 429 to detect throttling.La respuesta con error incluirá el campo Retry-After en el encabezado de respuesta.The failed response will include the Retry-After field in the response header.

  1. Espere el número de segundos especificado en el campo Retry-After.Wait the number of seconds specified in the Retry-After field.
  2. Vuelva a intentarlo.Retry the request.
  3. Si la solicitud vuelve a dar error con un código de error 429, significa que se le están aplicando limitaciones. Continúe usando el retraso de Retry-After recomendado y reintente la solicitud hasta que tenga éxito.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.

La manera más rápida de recuperarse de la limitación es interrumpir las solicitudes mediante el retraso Retry-After ya que AAD Graph sigue registrando el uso de recursos mientras se limita a un cliente.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.Puesto que todas las solicitudes se acumulan contra los límites de uso, debe evitar intentos inmediatos.You should avoid immediate retries since all requests accrue against your usage limits.

Para obtener una explicación más amplia de la limitación en Microsoft Cloud, consulte Throttling Pattern (Patrón de limitación).For a broader discussion of throttling on the Microsoft Cloud, see Throttling Pattern.

© 2018 Microsoft