Table of contents

Guide de la limitation | Concepts de l’API GraphThrottling guidance | Graph API concepts

Pat Altimore|Dernière mise à jour: 19/06/2018
|
2 Collaborateurs
Important

Nous vous recommandons fortement d’utiliser Microsoft Graph plutôt que l’API Graph Azure AD pour accéder aux ressources Azure Active Directory.We strongly recommend that you use Microsoft Graph instead of Azure AD Graph API to access Azure Active Directory resources.Nos efforts de développement sont désormais axés sur Microsoft Graph et aucune autre amélioration n’est prévue pour l’API Graph Azure AD.Our development efforts are now concentrated on Microsoft Graph and no further enhancements are planned for Azure AD Graph API.Il existe un nombre très limité de scénarios pour lesquels l’API Graph Azure AD peut être encore appropriée ; pour plus d’informations, consultez le billet de blog Microsoft Graph ou l’API Azure AD dans le Centre de développement 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’est-ce-que la limitation ?What is throttling?

La limitation limite le nombre d’appels simultanés à un service pour empêcher la surexploitation des ressources.Throttling limits the number of concurrent calls to a service to prevent overuse of resources.Azure Active Directory (AD) Graph est conçu pour gérer un volume très élevé de demandes.Azure Active Directory (AD) Graph is designed to handle a very high volume of requests.Si le nombre de demandes est très important, la limitation permet de conserver des performances optimales et la fiabilité du service 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.

La limitation varie en fonction du scénario.Throttling limits vary based on the scenario.Par exemple, si vous exécutez un grand volume d’opérations d’écriture sur votre locataire, vous serez plus amené à utiliser la limitation que si vous effectuez uniquement des opérations de lecture.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.

Que se passe-t-il en cas de limitation ?What happens when throttling occurs?

Lorsqu’un seuil de limitation est dépassé, Azure AD Graph limite les demandes suivantes de ce locataire pendant que la limitation est appliquée.When a throttling threshold is exceeded, Azure AD Graph limits any further requests from that client while the throttle is in effect.Quand la limitation est appliquée, Azure AD Graph renvoie le code d’état HTTP 429 (« Trop de demandes »), et les demandes échouent.When throttled, Azure AD Graph returns HTTP status code 429 ("Too many requests"), and the requests fail.Le comportement de la limitation peut être dépendant du type et du nombre de demandes.Throttling behavior can be dependent on the type and number of requests.Par exemple, si vous avez un volume très élevé de demandes, tous les types de demandes sont limités.For example, if you have a very high volume of requests, all requests types are throttled.Les limites de seuil varient en fonction du type de demande.Threshold limits vary based on the request type.Par conséquent, vous pouvez rencontrer un scénario dans lequel les opérations d’écriture sont limitées alors que les opérations de lecture sont toujours autorisées.Therefore, you could encounter a scenario where writes are throttled but reads are still permitted.

Scénarios de limitation courantsCommon throttling scenarios

Les causes les plus courantes de la limitation des clients sont entre autres :The most common causes of throttling of clients include:

  • Un grand nombre de demandes sur toutes les applications dans un locataire.A large number of requests across all applications in a tenant.
  • Un grand nombre de demandes d’une application spécifique sur tous les locataires.A large number of requests from a particular application across all tenants.

Bonnes pratiques de gestion de la limitationBest practices to handle throttling

  • Réduire le nombre d’opérations par demande.Reduce the number of operations per request.
  • Réduire la fréquence des appels.Reduce the frequency of calls.
  • Lorsque les requêtes échouent avec un code d’erreur HTTP 429, attendez le nombre de secondes spécifié dans le champ d’en-tête de réponse Retry-After et relancez la requête.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.

Lors de l’implémentation de la gestion des erreurs, utilisez le code d’erreur HTTP 429 pour détecter la limitation.When implementing error handling, use the HTTP error code 429 to detect throttling.La réponse d’échec inclura le champ Retry-After dans l’en-tête de réponse.The failed response will include the Retry-After field in the response header.

  1. Attendez le nombre de secondes spécifié dans le champ Retry-After.Wait the number of seconds specified in the Retry-After field.
  2. Relancez la demande.Retry the request.
  3. Si la demande échoue à nouveau avec un code d’erreur 429, la limitation est toujours appliquée. Continuez à respecter le délai Retry-After recommandé et relancez la demande jusqu'à sa réussite.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.

L’interruption de demandes à l’aide du délai Retry-After est le moyen le plus rapide pour récupérer de la limitation, car AAD Graph continue à journaliser l’utilisation des ressources pendant qu’un locataire est limité.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.Vous devez éviter des nouvelles tentatives immédiates, car l’accumulation des requêtes peut entraîner un dépassement de vos limites d’utilisation.You should avoid immediate retries since all requests accrue against your usage limits.

Pour plus d’informations sur la limitation sur Microsoft Cloud, consultez Modèle de limitation.For a broader discussion of throttling on the Microsoft Cloud, see Throttling Pattern.

© 2018 Microsoft