Quote e limiti

Questo documento offre informazioni sui limiti di quote e risorse di Pub/Sub.

Per ulteriori informazioni sul monitoraggio delle quote (ad esempio utilizzo dell'argomento o della sottoscrizione), consulta Monitoring.

Visualizzazione dell'utilizzo delle quote e gestione dei limiti delle quote

Per un determinato progetto, puoi utilizzare la dashboard delle quote di API e servizi per visualizzare le quote e l'utilizzo correnti. Puoi anche utilizzare questa dashboard per modificare una quota alla volta.

Per modificare più quote, utilizza la dashboard delle quote di IAM e amministrazione

Puoi utilizzare una delle dashboard sopra indicate per:

  • Ridurre le quote.
  • Avviare un processo di richiesta di limiti delle quote più elevati.

Attribuzione dell'utilizzo a un progetto

Per la velocità effettiva del sottoscrittore di tipo push, l'utilizzo delle quote viene addebitato a carico del progetto che contiene la sottoscrizione push.

Per le quote seguenti, l'utilizzo viene addebitato a carico del progetto associato alle credenziali del chiamante e non a carico del progetto che contiene la risorsa richiesta, ovvero il progetto che appare nel nome dell'argomento o della sottoscrizione.

  • Velocità effettiva publisher
  • Velocità effettiva sottoscrittore
  • Operazioni dell'amministratore

Ad esempio, se un account di servizio del progetto A invia una richiesta di pubblicazione per pubblicare un argomento nel progetto B, la quota è addebitata al progetto A. Tutte le richieste contengono credenziali che includono un ID progetto.

Limiti di quota

Le quote elencate nella tabella seguente possono essere visualizzate e modificate in base al progetto nella dashboard delle quote di API e servizi.

Le quote per le aree geografiche sono suddivise in due tipi:

  • Aree geografiche di grandi dimensioni: europe-west1, us-central1, us-east1
  • Aree geografiche di piccole dimensioni: tutte le altre

Quota Limite di quota predefinito Descrizione
Velocità effettiva del publisher per area geografica
  • 12.000.000 kB al minuto (200 MB/s) nelle aree geografiche di grandi dimensioni
  • 3.000.000 kB al minuto (50 MB/s) nelle aree geografiche di piccole dimensioni
L'utilizzo della quota si basa sulle dimensioni dei PubsubMessage pubblicati:

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.

Se i messaggi includono chiavi di ordinamento, la velocità effettiva massima del publisher è 1 MB/s per chiave di ordinamento.

Velocità effettiva sottoscrittore di tipo pull per area geografica
  • 24.000.000 kB al minuto (400 MB/s) nelle aree geografiche di grandi dimensioni
  • 6.000.000 kB al minuto (100 MB/s) nelle aree geografiche di piccole dimensioni
L'utilizzo della quota si basa sulle dimensioni dei PubsubMessage pubblicati:
Velocità effettiva Acknowledger per area geografica
  • 24.000.000 kB al minuto (400 MB/s) nelle aree geografiche di grandi dimensioni
  • 6.000.000 kB al minuto (100 MB/s) nelle aree geografiche di piccole dimensioni
L'utilizzo della quota si basa sulle dimensioni delle richieste Acknowledge e ModifyAckDeadline:
Velocità effettiva sottoscrittore di tipo push per area geografica
  • 1.200.000 kB al minuto (20 MB/s) nelle aree geografiche di grandi dimensioni
  • 300.000 kB al minuto (5 MB/s) nelle aree geografiche di piccole dimensioni
Per le richieste di consegna push inviate all'endpoint push, l'utilizzo della quota si basa sulle dimensioni dei PubsubMessage inviati all'endpoint push.
Velocità effettiva sottoscrittore StreamingPull per area geografica
  • 24.000.000 kB al minuto (400 MB/s) nelle aree geografiche di grandi dimensioni
  • 6.000.000 kB al minuto (100 MB/s) nelle aree geografiche di piccole dimensioni
L'utilizzo della quota si basa sulle dimensioni dei flussi di PubsubMessage trasmessi al sottoscrittore:

Tieni presente che le librerie client utilizzano operazioni StreamingPull quando possibile.

Numero di connessioni StreamingPull aperte per area geografica
  • 24.000 connessioni aperte alla volta nelle aree geografiche di grandi dimensioni
  • 6000 connessioni aperte alla volta nelle aree geografiche di piccole dimensioni
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.

Get*, List*, Create*, Delete*, ModifyPushConfig, SetIamPolicy, GetIamPolicy, TestIamPermissions e DetachSubscription sono operazioni dell'amministratore.

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 una PublishRequest con 105 messaggi da 50 byte ciascuno, le dimensioni dei dati utente sono pari a 105 * 50 bytes = 5250 bytes, quindi 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
Argomento 10.000 sottoscrizioni collegate
5000 snapshot collegati
Sottoscrizione Conserva i messaggi non confermati in un archivio permanente per 7 giorni dal momento della pubblicazione. Non ci sono limiti sul numero di messaggi conservati.
Le sottoscrizioni la cui presenza del client non sia stata rilevata per 31 giorni potrebbero essere automaticamente eliminate. La presenza viene rilevata tramite chiamate come Pull, Acknowledge e operazioni di push con esito positivo.
Richiesta di pubblicazione 10 MB (dimensioni totali)
1000 messaggi
Messaggio Dimensioni messaggio (campo data): 10 MB
Attributi per messaggio: 100
Dimensioni chiave attributo: 256 byte
Dimensioni valore attributo: 1024 byte
Messaggi push in sospeso

3,000 * N per impostazione predefinita.

30,000 * N per le sottoscrizioni che confermano >99% dei messaggi e con una latenza media <1s per le richieste push. l10n-attrs-original-order="of,push,request">

N è il numero di aree geografiche di pubblicazione. Per ulteriori informazioni, consulta la pagina Utilizzo delle sottoscrizioni push.

Flussi StreamingPull 10 MB/s per flusso aperto
Messaggi Pull/StreamingPull Il servizio potrebbe imporre limiti sul numero totale di messaggi StreamingPull in sospeso per connessione. Se incontri tali limiti, aumenta la frequenza di conferma dei messaggi e il numero di connessioni utilizzate.

Suggerimenti e avvertenze

Operazioni a volumi elevati

Se utilizzi lo strumento gcloud di Cloud SDK con un normale account utente (ovvero un account non di servizio), le operazioni Pub/Sub sono limitate a una frequenza idonea per le operazioni manuali. Le frequenze che superano questo limite causeranno l'errore RESOURCE_EXHAUSTED. La soluzione consiste nell'utilizzare le credenziali dell'account di servizio. Se vuoi utilizzare le credenziali di Cloud SDK per l'automazione, attiva un account di servizio per le operazioni Pub/Sub.

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.