Poiché l'API Google Drive è un servizio condiviso, applichiamo quote e limitazioni a assicurati che venga utilizzato in modo equo da tutti gli utenti e per proteggere il rendimento complessivo del sistema Google Workspace.
Le notifiche sono state recapitate all'indirizzo specificato quando
aprire un canale di notifica non incide sui limiti di quota. Tuttavia,
chiamate al changes.watch
,
channels.stop
e
I metodi files.watch
sono utili per
la tua quota.
Se superi una quota, riceverai un 403: User rate limit
exceeded
Risposta del codice di stato HTTP. Ulteriori controlli della limitazione di frequenza sulla
Il backend di Drive potrebbe anche generare un elemento 429: Too many
requests
la risposta corretta. In questo caso, è necessario utilizzare un backoff esponenziale
algoritmo e riprova più tardi. A condizione di rimanere entro
quote al minuto sottostanti, non esiste un limite al numero di richieste che puoi effettuare
al giorno.
La seguente tabella descrive in dettaglio i limiti per le query:
Quote | |||||
---|---|---|---|---|---|
Query |
|
Risolvere gli errori di quota basati sul tempo
Per tutti gli errori basati sul tempo (massimo N richieste per X minuti), consigliamo il codice rileva l'eccezione e utilizza un backoff esponenziale troncato per fare in modo che non generino un carico eccessivo.
Il backoff esponenziale è una strategia di gestione degli errori standard per le applicazioni di rete. Un L'algoritmo di backoff esponenziale prova a ripetere le richieste utilizzando tempi di attesa crescenti in modo esponenziale 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 positivo della richiesta.
Algoritmo di esempio
Un algoritmo con backoff esponenziale prova a ripetere le richieste in modo esponenziale, aumentando il tempo di attesa tra i nuovi tentativi e il tempo di backoff massimo. Ad esempio:
- Invia una richiesta all'API Google Drive.
- Se la richiesta non va a buon fine, attendi 1 +
random_number_milliseconds
e riprova la richiesta. - Se la richiesta non va a buon fine, attendi 2 +
random_number_milliseconds
e riprova la richiesta. - Se la richiesta non va a buon fine, attendi 4 +
random_number_milliseconds
e riprova la richiesta. - E così via, fino a
maximum_backoff
volta. - Continua ad attendere e riprovare fino al numero massimo di nuovi tentativi, ma non aumentare l'attesa tra un nuovo tentativo e l'altro.
dove:
- Il tempo di attesa è di
min(((2^n)+random_number_milliseconds), maximum_backoff)
, conn
incrementato di 1 per ogni iterazione (richiesta). random_number_milliseconds
è un numero casuale di millisecondi minore di o uguale a 1000. Ciò consente di evitare i casi in cui molti client vengono sincronizzati situazione e tutti riprovano contemporaneamente, inviando le richieste in tra le onde. Il valore dirandom_number_milliseconds
viene ricalcolato dopo ogni riprova a eseguire la richiesta.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 raggiunta la soglia (maximum_backoff
).
Non è necessario continuare ad aumentare il tempo di backoff per i nuovi tentativi successivi a questo punto. Per
Ad esempio, se un cliente utilizza un tempo maximum_backoff
di 64 secondi, dopo aver raggiunto
questo valore, il client può riprovare ogni 64 secondi. A un certo punto,
i client non dovrebbero più riprovare a tempo indeterminato.
Il tempo di attesa tra i nuovi tentativi e il numero di nuovi tentativi dipendono dal caso d'uso e alle condizioni della rete.
Prezzi
L'uso dell'API Google Drive è disponibile senza costi aggiuntivi. Superamento della quota limiti di richieste non comporta costi aggiuntivi e sul tuo account non vengono addebitati costi.
Richiedi un aumento della quota
A seconda dell'utilizzo delle risorse del progetto, potresti voler richiedere una quota aumentano. Per le chiamate API da parte di un account di servizio viene utilizzata un solo account. La richiesta di un aumento della quota non ne garantisce l'approvazione. Grande l'approvazione degli aumenti di quota può richiedere più tempo.
Non tutti i progetti hanno le stesse quote. Man mano che utilizzi sempre più Google Cloud potrebbe essere necessario aumentare le quote. Se prevedi un evento di successo di aumento dell'utilizzo, puoi proattivamente richiedere aggiustamenti della quota dalla pagina Quote nella console Google Cloud.
Per saperne di più, consulta le seguenti risorse:
- Informazioni sulle richieste di aumento della quota
- Visualizzare l'utilizzo e i limiti attuali delle quote
- Richiedere un limite di quota più elevato