Limites d'utilisation

L'API Google Drive étant un service partagé, nous appliquons des quotas et des limites veillez à ce qu'il soit utilisé équitablement par tous les utilisateurs et à protéger les performances globales du système Google Workspace.

Les notifications envoyées à l'adresse spécifiée lors du l'ouverture d'un canal de notification ne sont pas comptabilisées dans vos limites de quota. Toutefois, les appels à changes.watch ; channels.stop Les méthodes files.watch sont prises en compte votre quota.

Si vous dépassez un quota, vous recevez une alerte 403: User rate limit exceeded Réponse avec code d'état HTTP. Vérifications supplémentaires des limites de débit sur la Le backend Drive peut aussi générer un 429: Too many requests de réponse. Dans ce cas, utilisez un intervalle exponentiel entre les tentatives algorithme, puis réessayez plus tard. Si vous restez dans la par minute ci-dessous. Le nombre de requêtes que vous pouvez envoyer n'est pas limité. par jour.

Le tableau suivant détaille les limites de requêtes:

Quotas
Requêtes
Toutes les 60 secondes 12 000
Par utilisateur et pour 60 secondes 12 000

Résoudre les erreurs de quota basées sur le temps

Pour toutes les erreurs temporelles (N requêtes maximum toutes les X minutes), nous recommandons votre code détecte l'exception et utilise un intervalle exponentiel entre les tentatives tronqué pour vous assurer que votre ne génèrent pas de charge excessive.

L'intervalle exponentiel entre les tentatives est une stratégie standard de traitement des erreurs pour les applications réseau. Une L'algorithme d'intervalle exponentiel entre les tentatives relance les requêtes en utilisant des temps d'attente croissants de manière exponentielle entre les requêtes, jusqu'à un intervalle maximal entre les tentatives. Si les demandes n'aboutissent toujours pas, important que les délais entre les requêtes augmentent au fil du temps jusqu’à ce que la requête aboutisse.

Exemple d'algorithme

Un algorithme d'intervalle exponentiel entre les tentatives relance les requêtes de manière exponentielle, en augmentant le temps d'attente entre les tentatives, jusqu'à un intervalle maximal entre les tentatives. Exemple :

  1. Envoyez une requête à l'API Google Drive.
  2. Si la requête échoue, attendez 1 + random_number_milliseconds, puis réessayez. la demande.
  3. Si la requête échoue, attendez 2 + random_number_milliseconds, puis réessayez. la demande.
  4. Si la requête échoue, attendez 4 + random_number_milliseconds, puis réessayez. la demande.
  5. Poursuivez ainsi jusqu'à atteindre la valeur maximum_backoff.
  6. Continuez à attendre et à relancer la requête jusqu'à atteindre le nombre maximal de tentatives, mais n'augmentez pas le temps d'attente entre les tentatives.

où :

  • Le temps d'attente est de min(((2^n)+random_number_milliseconds), maximum_backoff). avec n incrémenté de 1 pour chaque itération (requête).
  • random_number_milliseconds est un nombre aléatoire de millisecondes inférieur à ou égal à 1 000. Cela permet d'éviter les cas où de nombreux clients sont synchronisés par une situation donnée et tous effectuent une nouvelle tentative en même temps, en envoyant les requêtes de manière synchronisée les vagues. La valeur de random_number_milliseconds est recalculée après chaque nouvelle tentative de requête.
  • La valeur maximum_backoff est généralement définie sur 32 ou 64 secondes. La valeur appropriée dépend du cas d'utilisation.

Le client peut continuer à effectuer de nouvelles tentatives une fois l'heure maximum_backoff atteinte. Au-delà de ce point, il n'est pas nécessaire de continuer à augmenter la durée de l'intervalle exponentiel entre les tentatives. Pour Par exemple, si un client utilise une durée maximum_backoff de 64 secondes, une fois cette valeur, le client peut réessayer toutes les 64 secondes. À un moment donné, les clients ne doivent pas pouvoir effectuer de nouvelles tentatives indéfiniment.

Le temps d'attente entre les tentatives et leur nombre dépendent de votre cas d'utilisation. et les conditions du réseau.

Tarifs

L'utilisation de l'API Google Drive est disponible sans frais supplémentaires. Dépassement du quota les limites de requêtes n'entraînent aucuns frais supplémentaires et votre compte n'est pas facturé.

Demander une augmentation du quota

En fonction de l'utilisation des ressources de votre projet, vous pouvez demander un quota augmenter. Les appels d'API effectués par un compte de service sont considérés comme utilisant un seul compte. La demande d'augmentation de quota ne garantit pas l'approbation. Grande L'approbation des augmentations de quota peut prendre plus de temps.

Tous les projets ne sont pas soumis aux mêmes quotas. Alors que vous utilisez de plus en plus Google Cloud vous devrez peut-être augmenter vos quotas. Si vous vous attendez à ce que l'augmentation de l'utilisation, vous pouvez demander des ajustements de quotas sur la page Quotas dans la console Google Cloud.

Pour en savoir plus, consultez les ressources suivantes :