Quote

Questo documento elenca le quote e i limiti che si applicano ad App Engine.

Una quota limita la quantità di una particolare risorsa Google Cloud condivisa che il tuo progetto Cloud può utilizzare, inclusi hardware, software e componenti di rete.

Le quote fanno parte di un sistema che:

  • Monitora l'utilizzo o il consumo di prodotti e servizi Google Cloud.
  • Limita il consumo di tali risorse per motivi quali l'equità e la riduzione dei picchi di utilizzo.
  • Mantiene le configurazioni che applicano automaticamente le limitazioni prescritte.
  • Fornisce un mezzo per apportare o richiedere modifiche alla quota.

Quando una quota viene superata, nella maggior parte dei casi il sistema blocca immediatamente l'accesso alla risorsa Google pertinente e l'attività che stai tentando di eseguire non riesce. Nella maggior parte dei casi, le quote si applicano a ogni progetto Cloud e sono condivise tra tutte le applicazioni e gli indirizzi IP che utilizzano il progetto Cloud.

Esistono anche limiti per le risorse App Engine. Questi limiti non sono correlati al sistema di quote. I limiti non possono essere modificati, se non diversamente specificato.

Un'applicazione App Engine può consumare risorse fino a determinate quote. Puoi visualizzare il consumo giornaliero della tua applicazione nella pagina dei dettagli delle quote in Google Cloud Console.

Tipi di quote

I tipi seguenti di quote si applicano alle applicazioni App Engine:

  • Le quote gratuite offrono alla tua applicazione una quantità gratuita di ciascuna risorsa. Dopo che la tua applicazione supera una quota gratuita, ti verrà addebitato qualsiasi utilizzo aggiuntivo di quella risorsa

    Solo l'ambiente standard di App Engine fornisce quote gratuite.

  • Le quote giornaliere proteggono l'integrità del sistema App Engine assicurando che nessuna singola applicazione consumi una quantità eccessiva di una risorsa a scapito di altre applicazioni. Se superi questi limiti, viene visualizzato un messaggio di errore. Le quote giornaliere vengono aggiornate ogni giorno alla mezzanotte del fuso orario del Pacifico.
  • Le quote al minuto impediscono alla tua applicazione di consumare tutte le sue risorse in brevissimi periodi di tempo e ad altre applicazioni di monopolizzare una determinata risorsa. Se la tua applicazione consuma una risorsa troppo rapidamente ed esaurisce una quota al minuto, viene visualizzata la parola "Limitato" accanto alla quota appropriata nella pagina Quote di Cloud Console. Le richieste di risorse che hanno raggiunto il limite massimo di quota al minuto vengono rifiutate.

I proprietari del progetto e gli amministratori della fatturazione possono abilitare la fatturazione per un progetto.

Quando attivi la fatturazione, aumentano i limiti di sicurezza dell'applicazione. Consulta la sezione Risorse per ulteriori dettagli.

Per maggiori dettagli su cosa succede quando viene superata una quota e su come gestire le condizioni di eccedenza di quota, vedi Quando una risorsa è esaurita.

Suggerimento: le quote massime al minuto consentono di far fronte a livelli di traffico elevati, offrendo capacità sufficiente a gestire un picco di traffico che faccia notizia. Se ritieni che una determinata quota non soddisfi questo requisito, invia un feedback nel sistema di monitoraggio dei problemi. Tieni presente che l'invio di feedback non costituisce una richiesta di aumento della quota, ma ci aiuterà a capire se esistono quote potenzialmente troppo basse per i casi d'uso generali.

Se prevedi livelli di traffico estremamente elevati o per qualche motivo la tua applicazione richiede quote particolarmente elevate (ad esempio, a causa del lancio di un prodotto importante o per un test di carico di grandi dimensioni), ti consigliamo di richiedere un pacchetto di assistenza.

Come vengono reintegrate le risorse

App Engine tiene traccia dell'utilizzo delle risorse dell'applicazione rispetto alle quote di sistema. App Engine ripristina tutte le misurazioni delle risorse all'inizio di ciascun giorno di calendario (ad eccezione di Dati archiviati, che rappresenta sempre la quantità in uso dello spazio di archiviazione del datastore).

Le quote giornaliere vengono reintegrate giornalmente alla mezzanotte del fuso orario del Pacifico. Le quote al minuto vengono aggiornate ogni 60 secondi.

Quando una risorsa è esaurita

Quando un'applicazione consuma completamente una risorsa allocata, la risorsa diventa non disponibile fino a quando la quota non viene reintegrata. Questo può causare il blocco dell'applicazione fino a quando la quota non viene reintegrata.

Quando sono esaurite le risorse necessarie per avviare una richiesta, App Engine restituisce per impostazione predefinita un codice di errore HTTP 403 o 503 relativo alla richiesta, anziché chiamare un gestore di richieste. Ciò accade per la risorsa Ore di istanza.

Suggerimento: puoi configurare l'applicazione in modo che venga fornita una pagina di errore personalizzata quando l'applicazione supera una quota. Per ulteriori dettagli, consulta la pagina relativa ai file di configurazione per Python (2.7, 3), Java, Go, PHP (5.5, 7) o Node.js .

In tutti gli altri casi, quando la risorsa è esaurita, un tentativo dell'applicazione di consumare la risorsa genera un'eccezione. Questa eccezione può essere rilevata e gestita dall'applicazione, ad esempio mostrando all'utente un messaggio di errore descrittivo. Nell'API Python l'eccezione è apiproxy_errors.OverQuotaError. Nell'API Java, l'eccezione è com.google.apphosting.api.ApiProxy.OverQuotaException. Nell'API Go, appengine.IsOverQuota indica se un errore rappresenta un errore di chiamata API dovuto a una disponibilità insufficiente di quota.

Nell'esempio seguente viene illustrato come individuare il messaggio OverQuotaError, che può essere generato dal metodo SendMessage() se è stata superata una quota relativa all'email:

try:
    mail.SendMessage(to='test@example.com', from='admin@example.com',
            subject='Test Email', body='Testing')
except apiproxy_errors.OverQuotaError, message:
    # Log the error. logging.error(message)
    # Display an informative message to the user.
    self.response.out.write('The email could not be sent. '
            'Please try again later.')

L'applicazione supera i limiti predefiniti? Se hai bisogno di una quota email più alta, puoi utilizzare SendGrid per l'invio di email. Per qualsiasi altro aumento di quota, se disponi del pacchetto di assistenza Silver, Gold o Platinum, puoi contattare il tuo rappresentante dell'assistenza e richiedere un aumento dei limiti di velocità effettiva.

Quote per l'ambiente flessibile di App Engine

Quando esegui il deployment di un'applicazione nell'ambiente flessibile di App Engine, consumi una certa quantità di risorse di Google Cloud. Potresti non essere in grado di modificare queste risorse che, tuttavia, incidono sul conteggio della quota.

Ad esempio, puoi trovare l'utilizzo delle risorse delle istanze dei tuoi servizi nella pagina delle quote delle risorse di Compute Engine.

Risorse

Un'applicazione può utilizzare le risorse soggette a quota riportate di seguito. Le risorse misurate in base ai limiti fatturabili sono contrassegnate dalla dicitura "(fatturabili)". Gli importi delle risorse rappresentano un'allocazione su un periodo di 24 ore.

Il costo delle risorse aggiuntive è elencato nella pagina relativa ai prezzi.

Bucket Cloud Storage predefinito

Il bucket Cloud Storage predefinito ha una quota gratuita di utilizzo giornaliero, come mostrato nella tabella riportata di seguito. Puoi creare un bucket predefinito gratuito nella pagina delle impostazioni di App Engine di Google Cloud Console relativa al progetto.

Le seguenti quote riguardano in modo specifico l'utilizzo del bucket predefinito. Consulta i prezzi dei bucket relativi a più aree geografiche di Google Cloud Storage per una descrizione dettagliata di queste quote.

Risorsa Limite predefinito
Dati archiviati del bucket Cloud Storage predefinito Primi 5 GB gratuiti; nessun limite massimo
Operazioni classe A del bucket Cloud Storage predefinito Prime 20.000 operazioni al giorno gratuite, nessun limite massimo
Operazioni classe B del bucket Cloud Storage predefinito Prime 50.000 operazioni al giorno gratuite, nessun limite massimo
Traffico in uscita dalla rete del bucket Cloud Storage predefinito Primo GB gratuito; nessun limite massimo

Archivio BLOB

Le seguenti quote riguardano specificamente l'utilizzo dell'archivio BLOB.

Dati archiviati nell'archivio BLOB
La quantità totale dei dati memorizzati nell'archivio BLOB, disponibili sia per le applicazioni gratuite che per quelle a pagamento.
Risorsa Limite predefinito
Dati archiviati nell'archivio BLOB Primi 5 GB gratuiti; nessun limite massimo

Archiviazione di codice e dati statici

Limite dati statici
In tutti i linguaggi, eccetto Go, nessun singolo file di dati statici può superare i 32 MB. Il limite per Go è 64 MB.
Spazio di archiviazione totale
La quota di spazio di archiviazione si applica alla quantità totale di codice e dati statici archiviati da tutte le versioni dell'applicazione. La dimensione totale di codice e file statici archiviati è elencata nella tabella Dashboard principale. Le dimensioni individuali sono visualizzate rispettivamente nelle schermate Versioni e Backend. Alle applicazioni verranno addebitati $ 0,026 per GB al mese per lo spazio di archiviazione di codice e dati statici che supera 1 GB.

Datastore

La quota Dati archiviati (fatturabili) si riferisce a tutti i dati archiviati per l'applicazione nel datastore e nell'archivio BLOB. Le altre quote nella sezione "Datastore" della pagina dei dettagli delle quote di Google Cloud Console si riferiscono specificamente al servizio di datastore.

Dati archiviati (fatturabili)

La quantità totale di dati archiviati in entità e indici corrispondenti del datastore e nell'archivio BLOB.

Va tenuto presente che i dati archiviati nel datastore possono comportare un overhead significativo. Questo overhead dipende dal numero e dai tipi di proprietà associate e include lo spazio utilizzato dagli indici integrati e personalizzati. Ogni entità archiviata nel datastore richiede i seguenti metadati:

  • La chiave dell'entità, incluso il tipo, l'ID o il nome della chiave, e le chiavi dei predecessori dell'entità.
  • Il nome e il valore di ogni proprietà. Poiché il datastore è senza schema, il nome di ogni proprietà deve essere archiviato insieme al valore della proprietà per ogni data entità.
  • Ciascuna riga degli indici integrati e personalizzati che faccia riferimento a questa entità. Ciascuna riga contiene il tipo di entità, un numero qualsiasi di valori della proprietà a seconda della definizione dell'indice e la chiave dell'entità.
Numero di indici
Il numero di indici datastore esistenti per l'applicazione. Ciò include gli indici che sono stati creati in passato e che ora non compaiono più nella configurazione dell'applicazione ma non sono stati eliminati. Consulta la pagina sui limiti di Datastore per ulteriori informazioni sui limiti.
Operazioni di scrittura
Il numero totale di operazioni di scrittura di Datastore.
Operazioni di lettura
Il numero totale di operazioni di lettura di Datastore.
Operazioni ridotte
Il numero totale di operazioni ridotte di Datastore. Le operazioni ridotte comprendono chiamate per l'allocazione di ID o query basate solo su chiavi di Datastore.
Risorsa Limite predefinito
Dati archiviati (fatturabili) 1 GB gratuito; nessun limite massimo.
Oltre la quota gratuita, si applicano le tariffe di fatturazione.
Numero di indici 200
Letture entità 50.000 gratuite; nessun limite massimo.
Oltre la quota gratuita, si applicano le tariffe di fatturazione.
Scritture entità 20.000 gratuite; nessun limite massimo.
Oltre la quota gratuita, si applicano le tariffe di fatturazione.
Eliminazioni entità 20.000 gratuite; nessun limite massimo.
Oltre la quota gratuita, si applicano le tariffe di fatturazione.
Operazioni ridotte Illimitato

Nota: le operazioni di datastore generate da Amministrazione Datastore e Visualizzatore Datastore vengono conteggiate nella quota dell'applicazione.

Deployment

In ogni applicazione App Engine, è possibile eseguire il deployment sino a 10.000 volte al giorno.

Quando esegui il deployment, Cloud Build crea un'immagine container che viene archiviata nel Container Registry. Ti verranno addebitati dei costi se lo spazio di archiviazione totale consumato dalle immagini supera il livello gratuito.

Ore di istanza

L'utilizzo delle istanze viene fatturato per uptime delle istanze a una determinata tariffa oraria.

Ci sono quote gratuite separate per le classi di istanza "F" e "B"(anche note come classi di istanza di "frontend" e di "backend"). Tieni presente che quando utilizzi servizi App Engine, la classe dell'istanza del servizio determina quale quota deve essere applicata.

Risorsa Quota gratuita
Istanze "F" 28 ore gratuite al giorno
Istanze "B" 9 ore gratuite al giorno

L'accumulo delle ore di istanza inizia quando un'istanza viene avviata e termina come descritto di seguito, a seconda del tipo di scalabilità specificato per l'istanza:

  • Scalabilità di base o automatica: l'accumulo termina quindici minuti dopo che l'istanza ha finito di elaborare l'ultima richiesta.
  • Scalabilità manuale: l'accumulo termina quindici minuti dopo l'arresto di un'istanza.

Se il numero di istanze inattive create da App Engine supera il massimo specificato nella scheda relativa alle impostazioni delle prestazioni di Cloud Console, le istanze in eccesso non accumulano ore di istanza.

Log

L'API Logs viene misurata quando vengono recuperati i dati di log.

L'allocazione per l'importazione dei log si riferisce ai dati dei log delle richieste e delle applicazioni relativi a un'applicazione. La suite operativa di Google Cloud offre il logging per le app di App Engine. Per ulteriori informazioni su tariffe e limiti, consulta la pagina relativa ai prezzi della suite operativa di Google Cloud.

Posta

App Engine fattura l'utilizzo delle email "per messaggio", contando ogni email per ciascun destinatario. Ad esempio, un'email inviata a dieci destinatari viene conteggiata come dieci messaggi.

Messaggi inviati
Il numero totale di messaggi che sono stati inviati dall'applicazione. Tieni presente che la quota massima per i messaggi inviati rimane a livelli gratuiti fino a quando il primo addebito per l'applicazione non è stato saldato.
Messaggi inviati agli amministratori
Il numero totale di messaggi inviati agli amministratori dall'applicazione (il limite di dimensioni totale per ogni email agli amministratori, inclusi intestazioni, allegati e corpo, è di 16 kB).
Dati del corpo del messaggio inviati
La quantità di dati inviati nel corpo dei messaggi email.
Allegati inviati
Il numero totale di allegati inviati tramite messaggi email.
Dati di allegato inviati
La quantità di dati inviati come allegati ai messaggi email.
Risorsa Limite giornaliero predefinito Frequenza massima
Email inviate ai destinatari 100 messaggi 8 messaggi al minuto
Email inviate agli amministratori 5000 email 24 email al minuto
Dati del corpo del messaggio inviati 60 MB 340 kB al minuto
Allegati inviati 2000 allegati 8 allegati al minuto
Dati di allegato inviati 100 MB 10 MB al minuto

Puoi aggiungere fino a un massimo di 50 mittenti autorizzati per l'API Mail.

Invio di un numero di email al di sopra della quota di posta giornaliera

Se la tua app richiede quote più elevate per l'invio di posta, puoi utilizzare un provider di posta di terze parti, come SendGrid, Mailjet o Mailgun.

Richieste

Larghezza di banda in uscita (fatturabile)

La quantità di dati inviati dall'applicazione in risposta alle richieste.

Sono inclusi:

  • Dati forniti da server dell'applicazione o di file statici oppure dall'archivio BLOB in risposta a richieste sicure e non sicure
  • Dati inviati nei messaggi email
  • Dati contenuti nelle richieste HTTP in uscita inviate dal servizio di recupero URL
Larghezza di banda in entrata

La quantità di dati provenienti dalle richieste ricevuti dall'applicazione. Ogni richiesta HTTP in entrata non può superare i 32 MB.

Sono inclusi:

  • Dati ricevuti dall'applicazione tramite richieste sicure e non sicure
  • Caricamenti sull'archivio BLOB
  • Dati ricevuti dal servizio di recupero URL in risposta alle richieste HTTP
Larghezza di banda in uscita sicura
La quantità di dati inviati dall'applicazione su una connessione protetta in risposta alle richieste.
Larghezza di banda in entrata sicura
La quantità di dati provenienti dalle richieste ricevuti dall'applicazione su una connessione protetta.

Le quote gratuite per l'API Search sono elencate nella tabella sottostante. Fai riferimento alla documentazione di Java, Python e Go per una descrizione dettagliata di ciascun tipo di chiamata all'API Search.

Alle risorse dell'API Search vengono addebitate le tariffe illustrate nel piano tariffario.

Risorsa o chiamata API Quota gratuita
Capacità di archiviazione totale (documenti e indici) 0,25 GB
Query 1000 query al giorno
Aggiunta di documenti agli indici 0,01 GB al giorno

La sezione relativa alle quote della console dell'applicazione visualizza un conteggio approssimativo delle richieste API. Tieni presente che quando si indicizzano più documenti in un'unica chiamata, al conteggio delle chiamate occorre sommare il numero di documenti.

L'API Search impone questi limiti per garantire l'affidabilità del servizio:

  • 100 minuti aggregati di tempo di esecuzione delle query al minuto, all'interno di un'applicazione e di un indice
  • 15.000 documenti aggiunti/eliminati al minuto
Inoltre, esiste un limite di 10 GB di archiviazione per indice. Quando un'applicazione tenta di superare questo limite, riceve un errore di quota insufficiente. Questo limite può essere aumentato fino a 200 GB inviando una richiesta dalla pagina App Engine Search di Google Cloud Console.

Nota: sebbene tali limiti vengano applicati al minuto, Cloud Console mostra i totali giornalieri per ciascuno. I clienti con assistenza Silver, Gold o Platinum possono richiedere limiti di velocità effettiva più elevati contattando il rappresentante dell'assistenza.

Coda di attività

Chiamate all'API Task Queue
Il numero totale di volte in cui l'applicazione ha chiamato l'API Task Queue per accodare un'attività.
Conteggio attività archiviate delle code di attività
Il numero totale di attività che l'applicazione ha accodato e che non sono ancora state eseguite.
Byte di attività archiviate delle code di attività
I byte consumati dalle attività che l'applicazione ha accodato e che non sono ancora state eseguite.

Quando un'attività viene eseguita, le sue richieste associate contribuiscono al conteggio delle quote di richiesta dell'applicazione.

Questi limiti si applicano a tutte le code di attività:

Risorsa Limite giornaliero Frequenza massima
Chiamate all'API Task Queue 1.000.000.000 n/d
Chiamate di gestione della coda di attività (tramite Cloud Console) 10.000 n/d
Risorsa Limite predefinito
Conteggio attività archiviate delle code di attività 10.000.000.000
Byte di attività archiviate delle code di attività Nessuno
Numero massimo di code (include sia le code in modalità push che pull ma non la coda predefinita) 100 code

Nota: una volta che un'attività è stata eseguita o eliminata, lo spazio di archiviazione utilizzato viene liberato. La quota di spazio di archiviazione viene aggiornata a intervalli regolari e potrebbe non mostrare immediatamente lo spazio recuperato. Puoi determinare il limite di byte delle attività archiviate modificando la configurazione della coda. Consulta la documentazione di Python, Java, Go o PHP per ulteriori dettagli.

I limiti elencati di seguito sono applicabili a tutte le code di attività in base al loro tipo:

Limiti coda in modalità push
Dimensione massima dell'attività100 kB
Frequenza di esecuzione della coda500 chiamate di attività al secondo per coda
Conto alla rovescia/tempo di esecuzione stimato massimo per un'attività30 giorni dalla data e ora correnti
Numero massimo di attività che è possibile aggiungere in un batch100 attività
Numero massimo di attività che possono essere aggiunte in una transazione5 attività
Numero massimo predefinito di code di attività100 code (contatta l'assistenza per richiedere un aumento)
Limiti coda in modalità pull
Dimensione massima dell'attività1 MB
Conto alla rovescia/tempo di esecuzione stimato massimo per un'attività 30 giorni dalla data e ora correnti
Numero massimo di attività che è possibile aggiungere in un batch 100 attività
Numero massimo di attività che possono essere aggiunte in una transazione 5 attività
Numero massimo di attività per cui è possibile acquisire un lease in una singola operazione 1000 attività
Dimensione massima del payload durante l'acquisizione di un lease per un batch di attività32 MB
Numero massimo predefinito di code di attività100 code (contatta l'assistenza per richiedere un aumento)

Cron

Le seguenti quote riguardano specificamente i cron job.

Cron job
Numero di cron job
Risorsa Limite predefinito
Cron job 250 cron job

Recupero URL

Chiamate all'API URL Fetch
Il numero totale di volte in cui l'applicazione ha effettuato l'accesso al servizio di recupero URL per eseguire una richiesta HTTP o HTTPS.
Dati recupero URL inviati
La quantità di dati inviati al servizio di recupero URL nelle richieste.
Dati recupero URL ricevuti
La quantità di dati ricevuti dal servizio di recupero URL nelle risposte. Anche questa quantità contribuisce alla quota di larghezza di banda in entrata.
Risorsa Limite giornaliero Frequenza massima
Chiamate all'API UrlFetch 860.000.000 di chiamate 660.000 chiamate al minuto
Dati UrlFetch inviati 4,5 TB 3600 MB al minuto
Dati UrlFetch ricevuti 4,5 TB 3600 MB al minuto