Quote e limiti

Questo documento elenca le quote e i limiti di sistema che si applicano a Media CDN.

  • Le quote hanno valori predefiniti, ma in genere puoi richiedere modifiche.
  • I limiti di sistema sono valori fissi che non possono essere modificati.

Google Cloud utilizza le quote per garantire l'equità e ridurre i picchi di utilizzo e disponibilità delle risorse. Una quota limita la quantità di una Google Cloud risorsa che Google Cloud il progetto può utilizzare. Le quote si applicano a una serie di tipi di risorse, inclusi hardware, software e componenti di rete. Ad esempio, le quote possono limitare il numero di chiamate API a un servizio, il numero di bilanciatori del carico utilizzati contemporaneamente dal tuo progetto o il numero di progetti che puoi creare. Le quote proteggono la community degli utentiGoogle Cloud impedendo il sovraccarico dei servizi. Le quote ti aiutano inoltre a gestire le tue Google Cloud risorse.

Il sistema delle quote di Cloud esegue le seguenti operazioni:

Nella maggior parte dei casi, quando provi a utilizzare una risorsa per un volume maggiore di quello consentito dalla quota, il sistema blocca l'accesso alla risorsa e l'attività che stai tentando di eseguire non va a buon fine.

In genere, le quote si applicano a livello di Google Cloud progetto. L'utilizzo di una risorsa in un progetto non influisce sulla quota disponibile in un altro progetto. All'interno di un Google Cloud progetto, le quote vengono condivise tra tutte le applicazioni e gli indirizzi IP.

Esistono anche limiti di sistema per le risorse Media CDN. I limiti di sistema non possono essere modificati.

Limiti

I seguenti limiti si applicano a Media CDN.

Configurazione

Elemento Limiti Note
Numero massimo di EdgeCacheService 20 per progetto Contatta il team di vendita Google Cloud se devi aumentare questo limite.
Numero massimo di EdgeCacheOrigin 30 per progetto Contatta il team di vendita Google Cloud se devi aumentare questo limite.
Numero massimo di EdgeCacheKeyset 10 per progetto Contatta il team di vendita Google Cloud se devi aumentare questo limite.
Numero massimo di RouteRules per EdgeCacheService 2000

Ogni EdgeCacheService può definire fino a 10 PathMatchers, e ogni PathMatcher può definire fino a 200 RouteRules.

Questo limite non può essere aumentato.

Numero massimo di certificati SSL per servizio 5 Questo limite non può essere aumentato. Consulta anche la quota per progetto per i certificati SSL.
Numero massimo di chiavi pubbliche per EdgeCacheKeyset 3 Questo limite non può essere aumentato. Più chiavi in un insieme di chiavi sono progettate per consentire rotazione della chiave: nel tempo devi rimuovere le chiavi più vecchie e inutilizzate.
Numero massimo di chiavi condivise di convalida per EdgeCacheKeyset 3 Questo limite non può essere aumentato. Più chiavi in un insieme di chiavi sono progettate per consentire rotazione della chiave: nel tempo devi rimuovere le chiavi più vecchie e inutilizzate.

Intestazioni, richieste e risposte HTTP

Elemento Limiti Note
Dimensioni massime dell'intestazione della richiesta, incluso il percorso della richiesta 16 KiB Questo limite non può essere aumentato.

A seconda del protocollo sottostante, la connessione di richiesta viene chiusa senza che venga scritto un codice di risposta oppure la richiesta viene rifiutata con una risposta HTTP 431 Request Header Fields Too Long.

Queste richieste vengono registrate con un statusDetails di headers_too_long, se la registrazione è abilitata.

Dimensioni massime del corpo della richiesta 16 KiB Questo limite non può essere aumentato.

Le richieste con un corpo superiore a questo limite vengono rifiutate con un codice di stato HTTP 413 Content Too Large.

Dimensione massima dell'intestazione della risposta Circa 128 KiB Questo limite non può essere aumentato.

Le risposte di origine con intestazioni che superano questo limite comportano l'invio di un errore HTTP 502 al client. Questi vengono registrati con un statusDetails di backend_response_headers_too_long, se la registrazione è abilitata.

Dimensioni massime dell'oggetto memorizzabile nella cache 100 GiB Questo limite non può essere aumentato.

Questa è la dimensione massima degli oggetti nell'origine che Media CDN può memorizzare nella cache. Gli oggetti più grandi vengono trattati come non memorizzabili nella cache.

Dimensione massima della risposta non memorizzabile nella cache 500 MiB Questo limite non può essere aumentato.

Numero massimo di byte nel corpo di una risposta che i proxy Media CDN quando un oggetto non è memorizzabile nella cache. Le risposte non memorizzabili nella cache vengono troncate dopo aver raggiunto il limite.

Conversione in lettere minuscole per intestazioni Sempre, per Media CDN Media CDN segue le convenzioni HTTP/2 per l'uso di lettere maiuscole/minuscole nelle intestazioni di richiesta e risposta.

Indipendentemente dal protocollo utilizzato, tutte le intestazioni vengono convertite in lettere minuscole.

Ad esempio, Host diventa host e Keep-Alive diventa keep-alive.

Le maiuscole e minuscole dei valori di intestazione non vengono modificate.

Limiti di tasso di richieste API

Se hai bisogno di un limite di frequenza superiore per le richieste API, puoi esaminare l'utilizzo attuale e richiedere un aumento.

Elemento Limiti
Invalidazioni 10 al minuto per EdgeCacheService
Tutte le chiamate che non si trovano nello spazio dei nomi networkservices 1200 chiamate al minuto per progetto
Sola lettura: GetEdgeCache*, ListEdgeCache* 100 al minuto per progetto
Lettura/scrittura: tutto nello spazio dei nomi networkservices non contrassegnato come di sola lettura 100 al minuto per progetto

Ti consigliamo di inviare le richieste di aggiornamento, ad esempio create, patch e delete, una alla volta. Sebbene l'API metta in coda più richieste simultanee, l'invio simultaneo di queste richieste può comportare un aumento significativo della latenza e tempi di elaborazione più lunghi man mano che il sistema elabora ogni elemento in serie.

Timeout client

Timeout Durata massima Codice di stato Descrizione
Maximum request duration 5 minuti HTTP 408 Request Timeout La durata massima di una singola richiesta-risposta.
Header timeout 10 secondi HTTP 408 Request Timeout Il tempo a disposizione del client per inviare l'insieme completo di intestazioni della richiesta.

Timeout dell'origine

  • connectTimeout e maxAttemptsTimeout limitano il tempo necessario a Media CDN per trovare una risposta utilizzabile.

    Entrambi i timeout includono il tempo necessario all'origine per restituire le intestazioni e per determinare se utilizzare un failover o un reindirizzamento. connectTimeout viene applicato indipendentemente per ogni tentativo di origine, mentre maxAttemptsTimeout include il tempo necessario per connettersi a tutti i tentativi di origine, inclusi i failover e i reindirizzamenti. Un reindirizzamento viene conteggiato come tentativo aggiuntivo di connessione all'origine e viene conteggiato ai fini del maxAttempts impostato per l'origine configurata.

    Quando Media CDN rileva una risposta non di reindirizzamento, ad esempio da un'origine di reindirizzamento o di failover, vengono applicati i valori readTimeout e responseTimeout. Le origini reindirizzate utilizzano i valori connectTimeout, readTimeout e responseTimeout configurati per EdgeCacheOrigin che ha riscontrato il reindirizzamento.

  • responseTimeout e readTimeout controllano la durata di una risposta in streaming. Dopo che Media CDN ha stabilito che utilizzerà una risposta upstream, né connectTimeoutmaxAttemptsTimeout sono importanti. A questo punto, entrano in vigore readTimeout e responseTimeout.

Media CDN esegue al massimo quattro tentativi di origine in tutte le origini, indipendentemente dal valore maxAttempts impostato da ogni EdgeCacheOrigin. Media CDN utilizza il valore maxAttemptsTimeout del EdgeCacheOrigin principale. I valori di timeout per tentativo (connectTimeout, readTimeout e responseTimeout) sono configurati per EdgeCacheOrigin di ogni tentativo.

La tabella seguente descrive i campi relativi al timeout:

Campo Predefinito Descrizione
connectTimeout 5 secondi

Il tempo massimo che Media CDN può impiegare dall'avvio della richiesta all'origine fino a quando Media CDN determina se la risposta è utilizzabile. In pratica, connectTimeout copre il tempo che inizia con la creazione della richiesta, quindi con le ricerche DNS, poi con gli handshake TLS, la creazione della connessione TCP/QUIC, fino a ottenere le intestazioni della risposta che contengono il codice di stato HTTP.

Il timeout deve essere un valore compreso tra 1 e 15 secondi.

maxAttemptsTimeout 15 secondi

Il tempo massimo in tutti i tentativi di connessione all'origine, incluse quelle di failover, prima di restituire un errore al client. Viene restituito un codice di stato HTTP 504 se il timeout viene raggiunto prima che venga restituita una risposta.

Il timeout deve essere un valore compreso tra 1 e 30 secondi.

Questa impostazione definisce la durata totale di tutti i tentativi di connessione all'origine, incluse le origini di failover, per limitare il tempo totale che i client devono attendere prima che inizi lo streaming dei contenuti. Viene utilizzato solo il primo valore maxAttemptsTimeout, dove il primo è definito dall'origine configurata per la route specificata.

readTimeout 15 secondi

La durata massima di attesa tra le letture di una singola risposta HTTP. Il valore readTimeout è limitato da responseTimeout. Tutte le letture della risposta HTTP devono essere completate entro la scadenza stabilita da responseTimeout. Il timeout deve essere un valore compreso tra 1 e 30 secondi. Se questo timeout viene raggiunto prima che la risposta sia completa, la risposta viene troncata e registrata.

responseTimeout 30 secondi

La durata massima consentita per il completamento di una risposta.

Il timeout deve essere un valore compreso tra 1 e 120 secondi.

La durata viene misurata a partire dal momento in cui vengono ricevuti i primi byte del corpo. Se questo timeout viene raggiunto prima che la risposta sia completa, la risposta viene troncata e registrata.

Manage quotas

Media CDN enforces quotas on resource usage for various reasons. For example, quotas protect the community of Google Cloud users by preventing unforeseen spikes in usage. Quotas also help users who are exploring Google Cloud with the free tier to stay within their trial.

All projects start with the same quotas, which you can change by requesting additional quota. Some quotas might increase automatically based on your use of a product.

Permissions

To view quotas or request quota increases, Identity and Access Management (IAM) principals need one of the following roles.

Task Required role
Check quotas for a project One of the following:
Modify quotas, request additional quota One of the following:
  • Project Owner (roles/owner)
  • Project Editor (roles/editor)
  • Quota Administrator (roles/servicemanagement.quotaAdmin)
  • A custom role with the serviceusage.quotas.update permission

Check your quota

Console

  1. In the Google Cloud console, go to the Quotas page.

    Go to Quotas

  2. To search for the quota that you want to update, use the Filter table. If you don't know the name of the quota, use the links on this page instead.

gcloud

Using the Google Cloud CLI, run the following command to check your quotas. Replace PROJECT_ID with your own project ID.

    gcloud compute project-info describe --project PROJECT_ID

To check your used quota in a region, run the following command:

    gcloud compute regions describe example-region
    

Errors when exceeding your quota

If you exceed a quota with a gcloud command, gcloud outputs a quota exceeded error message and returns with the exit code 1.

If you exceed a quota with an API request, Google Cloud returns the following HTTP status code: 413 Request Entity Too Large.

Request additional quota

To adjust most quotas, use the Google Cloud console. For more information, see Request a quota adjustment.

Resource availability

Each quota represents a maximum number for a particular type of resource that you can create, if that resource is available. It's important to note that quotas don't guarantee resource availability. Even if you have available quota, you can't create a new resource if it is not available.

For example, you might have sufficient quota to create a new regional, external IP address in a given region. However, that is not possible if there are no available external IP addresses in that region. Zonal resource availability can also affect your ability to create a new resource.

Situations where resources are unavailable in an entire region are rare. However, resources within a zone can be depleted from time to time, typically without impact to the service level agreement (SLA) for the type of resource. For more information, review the relevant SLA for the resource.