Scegli Cloud Tasks o Pub/Sub

Puoi utilizzare sia Cloud Tasks che Pub/Sub per implementare il passaggio dei messaggi e l'integrazione asincrona, ma sebbene funzionano in modi simili, non sono identici. Questa pagina ti aiuta a scegliere il prodotto più adatto al tuo caso d'uso.

Differenze principali

La differenza principale tra Pub/Sub e Cloud Tasks è il concetto di chiamata implicita ed esplicita.

Pub/Sub mira a disaccoppiare i publisher di eventi e i sottoscrittori a questi eventi. I publisher non hanno bisogno di sapere nulla sui loro iscritti. Di conseguenza, Pub/Sub non offre agli editori alcun controllo sulla consegna dei messaggi, fatta eccezione per la garanzia della consegna. In questo modo, Pub/Sub supporta la chiamata implicita: un publisher causa implicitamente l'esecuzione dei sottoscrittori pubblicando un evento.

Al contrario, Cloud Tasks è finalizzato alle chiamate esplicite in cui l'editore mantiene il pieno controllo dell'esecuzione. In particolare, un editore specifica un endpoint in cui deve essere recapitato ogni messaggio.

Inoltre, Cloud Tasks offre strumenti per la gestione di code e attività non disponibili per i publisher Pub/Sub, tra cui:

  • Pianificare tempi di consegna specifici
  • Controlli della frequenza di pubblicazione
  • Nuovi tentativi configurabili
  • Accesso e gestione di singole attività in una coda
  • Deduplicazione della creazione di messaggi/attività

Confronto dettagliato delle funzionalità

Funzionalità Cloud Tasks Cloud Pub/Sub
Push tramite webhook
Garanzia di consegna almeno una volta
Nuovi tentativi configurabili
Deduplicazione della creazione di attività No
Consegna pianificata No
Consegna a domicilio effettuata No. L'ordine delle attività accodate viene conservato secondo il criterio del "best effort". Sì, con le chiavi di ordinazione
Controlli delle tariffe esplicite I client con sottoscrizione pull possono implementare il controllo del flusso
Esegui il pull tramite API No
Inserimento batch No
Più gestori/iscritti per messaggio No
Conservazione di attività/messaggi 30 giorni Fino a 31 giorni
Dimensione massima dell'attività/del messaggio 1 MB 10 MB
Frequenza di pubblicazione massima 500 qps/coda Nessun limite superiore
Disponibilità geografica Regionale Globale
Durata massima di elaborazione gestore push/sottoscrittore 30 minuti (HTTP)
10 minuti (scalabilità automatica standard di App Engine)
24 ore (scalabilità manuale o di base di App Engine)
60 minuti (scalabilità di App Engine standard)
10 minuti per le operazioni push
Numero di code/iscrizioni per progetto 1000/progetto, altro disponibile tramite richiesta di aumento della quota 10.000/progetto