Limiti di utilizzo

Poiché l'API Google Drive è un servizio condiviso, applichiamo quote e limitazioni per assicurarci che venga utilizzata in modo equo da tutti gli utenti e per proteggere le prestazioni complessive del sistema Google Workspace.

Le notifiche inviate all'indirizzo specificato all'apertura di un canale di notifica non incidono sui limiti di quota. Tuttavia, le chiamate ai metodi changes.watch, channels.stop e files.watch vengono conteggiate nella quota.

Se superi una quota, riceverai una risposta con codice di stato HTTP 403: User rate limit exceeded. Anche altri controlli della limitazione di frequenza sul backend di Drive potrebbero generare una risposta 429: Too many requests. In questo caso, devi utilizzare un algoritmo di backoff esponenziale e riprovare più tardi. Purché tu rispetti le quote al minuto riportate di seguito, non c'è limite al numero di richieste che puoi effettuare al giorno.

La tabella seguente descrive in dettaglio i limiti delle query:

Quote
Query
Per 60 secondi 12.000
Per 60 secondi per utente 12.000

Risolvere gli errori di quota basati sul tempo

Per tutti gli errori basati sul tempo (massimo N richieste per X minuti), ti consigliamo che il tuo codice rilevi l'eccezione e utilizzi un backoff esponenziale troncato per assicurarti che i dispositivi non generino un carico eccessivo.

Il backoff esponenziale è una strategia standard di gestione degli errori per le applicazioni di rete. Un algoritmo di backoff esponenziale tenta di nuovo le richieste utilizzando tempi di attesa esponenziali tra le richieste, fino a un tempo di backoff massimo. Se le richieste continuano a non andare a buon fine, è importante che i ritardi tra le richieste aumentino nel tempo fino all'esito della richiesta.

Algoritmo di esempio

Un algoritmo di backoff esponenziale tenta di ripetere le richieste in modo esponenziale, aumentando il tempo di attesa tra un nuovo tentativo e l'altro fino a un tempo di backoff massimo. Ad esempio:

  1. Effettua una richiesta all'API Google Drive.
  2. Se la richiesta non va a buon fine, attendi 1 + random_number_milliseconds e riprova.
  3. Se la richiesta non va a buon fine, attendi 2 + random_number_milliseconds e riprova.
  4. Se la richiesta non va a buon fine, attendi 4 + random_number_milliseconds e riprova.
  5. E così via, fino a maximum_backoff volta.
  6. Continua ad attendere e a riprovare fino al numero massimo di nuovi tentativi, ma non aumentare il periodo di attesa tra un nuovo tentativo e l'altro.

dove:

  • Il tempo di attesa è min(((2^n)+random_number_milliseconds), maximum_backoff), con n incrementato di 1 per ogni iterazione (richiesta).
  • random_number_milliseconds è un numero casuale di millisecondi minore o uguale a 1000. Ciò consente di evitare i casi in cui molti client vengono sincronizzati in base a qualche situazione e tutti riprovano contemporaneamente, inviando le richieste in wave sincronizzate. Il valore di random_number_milliseconds viene ricalcolato dopo ogni richiesta di nuovo tentativo.
  • maximum_backoff dura in genere 32 o 64 secondi. Il valore appropriato dipende dal caso d'uso.

Il client può continuare a riprovare una volta raggiunto il limite di maximum_backoff. I nuovi tentativi dopo questo punto non devono necessariamente aumentare il tempo di backoff. Ad esempio, se un client utilizza un tempo maximum_backoff di 64 secondi, dopo aver raggiunto questo valore, può riprovare ogni 64 secondi. A un certo punto, ai client dovrebbe essere impedito di riprovare a tempo indeterminato.

Il tempo di attesa tra i nuovi tentativi e il numero di nuovi tentativi dipende dal caso d'uso e dalle condizioni della rete.

Prezzi

L'uso dell'API Google Drive è disponibile senza costi aggiuntivi. Il superamento dei limiti di richiesta di quota non comporta costi aggiuntivi e non prevede addebiti sul tuo account.

Richiedi un aumento della quota

A seconda dell'utilizzo delle risorse del progetto, potresti voler richiedere un aumento della quota. Le chiamate API effettuate da un account di servizio utilizzano un singolo account. La richiesta di un aumento di quota non ne garantisce l'approvazione. L'approvazione di aumenti significativi di quota può richiedere più tempo.

Non tutti i progetti hanno le stesse quote. Con l'uso crescente di Google Cloud nel tempo, le tue quote potrebbero dover aumentare. Se prevedi un aumento imminente e consistente dell'utilizzo, puoi richiedere un adeguamento della quota in modo proattivo nella pagina Quote della console Google Cloud.

Per saperne di più, consulta le seguenti risorse: