Google Cloud utilizza le quote per limitare la quantità di una determinata risorsa Google Cloud condivisa che puoi utilizzare. Ogni quota rappresenta una specifica risorsa conteggiabile, come le chiamate API a un particolare servizio, il numero di byte inviati a un particolare servizio o il numero di connessioni in streaming utilizzate contemporaneamente dal tuo progetto.
Molti servizi hanno anche limiti che non sono correlati al sistema delle quote. Si tratta di vincoli fissi, come le dimensioni massime di messaggi o il numero di risorse Pub/Sub che puoi creare in un progetto, che non possono essere aumentate o diminuite.
Visualizza e gestisci le quote
Per un determinato progetto, puoi utilizzare la dashboard delle quote IAM e amministrazione per visualizzare l'utilizzo e i limiti di quota attuali. Puoi utilizzare questa dashboard anche per:
- Ridurre i limiti di quota
- Avvia una procedura per richiedere limiti di quota più elevati
Per ulteriori informazioni sul monitoraggio e sugli avvisi relativi all'utilizzo della quota, consulta Monitoraggio.
Attribuzione dell'utilizzo della quota
Per la velocità effettiva del sottoscrittore di tipo push, l'utilizzo delle quote viene addebitato a carico del progetto che contiene la sottoscrizione push. Si tratta del progetto che compare nel nome della sottoscrizione.
Per tutte le altre quote, l'utilizzo viene addebitato in base al progetto associato alle credenziali specificate nella richiesta. L'utilizzo della quota non viene addebitato in base al progetto che contiene la risorsa richiesta.
Ad esempio, se un account di servizio nel progetto A invia una richiesta di pubblicazione a un argomento nel progetto B, la quota viene addebitata al progetto A.
In alcuni casi, potresti voler addebitare l'utilizzo della quota a fronte di un altro progetto. Puoi utilizzare il parametro di sistema X-Goog-User-Project
per modificare il progetto per l'attribuzione della quota. Per scoprire di più su X-Goog-User-Project
, consulta Parametri di sistema.
Puoi utilizzare l'interfaccia a riga di comando gcloud per impostare il progetto per l'attribuzione della quota per una richiesta specifica. L'interfaccia a riga di comando gcloud invia l'intestazione della richiesta X-Goog-User-Project
.
Devi avere il ruolo roles/serviceusage.serviceUsageConsumer
o un ruolo personalizzato con l'autorizzazione serviceusage.services.use
per il progetto che utilizzerai per l'attribuzione della quota.
L'esempio seguente mostra come ottenere un elenco delle sottoscrizioni nel progetto RESOURCE_PROJECT mentre carichi la quota di operazioni amministratore sul progetto QUOTA_PROJECT. Esegui questo comando nel terminale Google Cloud CLI:
gcloud pubsub subscriptions list --project=
RESOURCE_PROJECT --billing-project=
QUOTA_PROJECT
Sostituisci QUOTA_PROJECT
con l'ID del progetto Google Cloud per il quale vuoi addebitare la quota.
Tieni presente che in Pub/Sub, il progetto fatturato è sempre quello che contiene la risorsa. Puoi modificare il progetto solo per l'attribuzione della quota.
Quote di Pub/Sub
Le quote elencate nella seguente tabella possono essere visualizzate e modificate in base al progetto nella dashboard delle quote di API e servizi.
Tutte le altre quote per area geografica sono divise in 3 tipi:
- Regioni di grandi dimensioni:
europe-west1
,europe-west4
,us-central1
,us-east1
,us-east4
,us-west1
eus-west2
- Regioni medie:
asia-east1
,asia-northeast1
,asia-southeast1
,europe-west2
,europe-west3
- Aree geografiche di piccole dimensioni: tutte le altre
Le quote di consegna "exactly-once" sono specifiche per regione. Controlla i dettagli per ogni area nella seguente tabella.
Quota | Limite di quota predefinito | Descrizione |
---|---|---|
Velocità effettiva del publisher per regione |
|
L'utilizzo della quota si basa sulle dimensioni dei
Tieni presente che in una singola richiesta di pubblicazione possono essere inclusi più messaggi e che non è previsto alcun addebito di quota aggiuntiva per messaggio. |
Velocità effettiva sottoscrittore di tipo pull per area geografica |
|
L'utilizzo della quota si basa sulle dimensioni dei
|
Velocità effettiva Acknowledger per area geografica |
|
L'utilizzo della quota si basa sulle dimensioni delle richieste
|
Velocità effettiva sottoscrittore Push e BigQuery per regione |
|
Per le richieste di consegna push inviate all'endpoint push, l'utilizzo della quota si basa sulle dimensioni dei |
Velocità effettiva sottoscrittore StreamingPull per regione |
|
L'utilizzo della quota si basa sulle dimensioni dei flussi di
Tieni presente che le librerie client utilizzano le operazioni StreamingPull ove possibile. |
Numero di connessioni StreamingPull aperte per regione |
|
Il numero di connessioni StreamingPull aperte in un determinato momento. Vedi StreamingPull. |
Operazioni dell'amministratore | 6000 al minuto (100 operazioni/s) |
Ogni operazione dell'amministratore, ad esempio GetTopicRequest, addebita un'unità a questa quota.
|
Numero di messaggi consumati dalle sottoscrizioni con consegna "exactly-once" abilitata per regione |
|
L'utilizzo della quota si basa sul numero di
|
Numero di messaggi confermati o la cui scadenza è estesa quando si utilizzano abbonamenti con la consegna "exactly-once" abilitata per area geografica |
|
L'utilizzo della quota si basa sul numero di ID di conferma nelle richieste
|
Unità per le quote di velocità effettiva
L'utilizzo delle quote di velocità effettiva viene misurato in unità da 1 kB. 1 kB corrisponde a 1000 byte. Ad esempio, in un PublishRequest
con 105 messaggi di 50 byte ciascuno, la dimensione dei dati utente è 105 * 50 bytes = 5250 bytes
, pertanto l'utilizzo della quota è max(1kB, ceil(5250 bytes/1000)) = 6kB
.
Limiti delle risorse
Risorsa | Limiti |
---|---|
Progetto |
10.000 argomenti 10.000 sottoscrizioni collegate o scollegate 5000 snapshot 10.000 schemi |
Argomento |
10.000 sottoscrizioni collegate 5000 snapshot collegati Se è configurata una conservazione di messaggi degli argomenti, i messaggi pubblicati in un argomento possono essere conservati in uno spazio di archiviazione permanente per un massimo di 31 giorni dalla data di pubblicazione. |
Sottoscrizione |
Per impostazione predefinita, conserva i messaggi non confermati nell'archiviazione permanente per sette giorni dal momento della pubblicazione. Non ci sono limiti sul
numero di messaggi conservati. La sottoscrizione scadrà se i sottoscrittori non la utilizzano. Il periodo di scadenza predefinito è 31 giorni. |
Schema | Dimensioni dello schema (campo definition ): 50 kB |
Richiesta di pubblicazione |
10 MB (dimensione totale) 1000 messaggi |
Messaggio |
Dimensioni messaggio (campo data ): 10 MBAttributi per messaggio: 100 Dimensioni chiave attributo: 256 byte Dimensioni valore attributo: 1024 byte |
Flussi StreamingPull | 10 MB/s per flusso aperto |
Messaggi Pull/StreamingPull | Il servizio potrebbe imporre limiti al numero totale di messaggi StreamingPull in sospeso per connessione. Se riscontri tali limiti, aumenta la frequenza di conferma dei messaggi e il numero di connessioni utilizzate. |
Accettare e modificare le richieste di scadenza |
512 kB (dimensione totale) |
Chiavi di ordinamento | Se i messaggi hanno chiavi di ordinamento, la velocità effettiva massima del publisher è di 1 MBps per ogni chiave di ordinamento. |
Utilizza un account di servizio per quote più elevate
Se utilizzi lo strumento gcloud Google Cloud CLI con un account utente normale (ossia un account non di servizio), le operazioni Pub/Sub sono limitate a una frequenza adatta alle operazioni manuali. Le tariffe superiori a questo limite generano l'errore RESOURCE_EXHAUSTED. La soluzione consiste nell'utilizzare le credenziali dell'account di servizio. Se vuoi utilizzare le credenziali dell'interfaccia a riga di comando gcloud per l'automazione, attiva un account di servizio per le operazioni Pub/Sub.
Usa gli endpoint a livello di regione per instradare le richieste
Se hai una quota aggiuntiva in determinate aree geografiche, puoi indirizzare le richieste a queste aree geografiche utilizzando gli endpoint Pub/Sub a livello di area geografica. Quando pubblichi messaggi in un endpoint globale, il servizio Pub/Sub potrebbe instradare il traffico verso un'area geografica che non dispone di quota sufficiente.
Quote non corrispondenti
I casi di quote non corrispondenti possono verificarsi quando i messaggi pubblicati o ricevuti sono di dimensioni inferiori ai 1000 byte, Ad esempio:
Se pubblichi 10 messaggi da 500 byte in richieste distinte, l'utilizzo della quota del publisher sarà di 10.000 byte. Questo perché i messaggi di dimensioni inferiori ai 1000 byte vengono automaticamente arrotondati per eccesso all'incremento di 1000 byte successivo.
Se ricevi questi 10 messaggi in una singola risposta pull, l'utilizzo della quota di sottoscrittore potrebbe essere solo di 5 kB, poiché le dimensioni effettive di ogni messaggio vengono combinate per determinare la quota complessiva.
Questo è vero anche in caso contrario. L'utilizzo della quota di sottoscrittore potrebbe essere maggiore dell'utilizzo della quota di publisher se pubblichi più messaggi in una singola richiesta di pubblicazione o se ricevi i messaggi in richieste di pull separate.