Scegli Pub/Sub o Pub/Sub Lite

Questo documento ha lo scopo di aiutarti a scegliere tra Pub/Sub e Pub/Sub Lite. Questo documento richiede la familiarità con i concetti di base di Pub/Sub, come come argomenti e sottoscrizioni. Se non hai mai utilizzato Pub/Sub, leggi Che cos'è Pub/Sub per prima cosa.

Pub/Sub e Pub/Sub Lite sono scalabili orizzontalmente e servizi di messaggistica gestiti. Questi servizi possono gestire volumi elevati per supportare grandi requisiti di archiviazione. Pub/Sub di solito è soluzione predefinita per la maggior parte dei casi d'uso di integrazione e analisi delle applicazioni. È ricco di funzionalità e completamente gestito. È consigliato Pub/Sub Lite per applicazioni in cui la velocità effettiva della messaggistica è più stabile, per i carichi di lavoro possono trarre vantaggio da un sistema basato su partizioni, e i costi sono un problema significativo.

Pub/Sub offre una gamma più ampia di funzionalità per messaggio parallelismo, routing globale e scalabilità automatica della capacità delle risorse. Nel di replica dei messaggi, Pub/Sub garantisce replica sincrona.

Pub/Sub Lite è una soluzione basata sulle partizioni carico di lavoro operativo, disponibilità globale e alcune funzionalità per l'efficienza in termini di costi. Pub/Sub Lite richiede la prenotazione e la gestione manuale della risorsa e la capacità di archiviazione. All'interno di Pub/Sub Lite, puoi scegliere un ambiente a livello di regione Lite. Gli argomenti Lite a livello di regione offrono la stessa disponibilità garantita da SLA e gli argomenti Pub/Sub.

Osserva le differenze di affidabilità tra i due servizi in termini di replica dei messaggi. Pub/Sub supporta il traffico sincrono replica dei dati e utilizza tre zone. Gli argomenti Lite a livello di regione replicano i dati in una zona secondaria. Gli argomenti Lite a livello di zona replicano i dati in una sola zona.

Elenco di controllo dei requisiti aziendali

Le seguenti domande possono aiutarti a scegliere il giusto Pub/Sub servizio di messaggistica:

  • Affidabilità, costi operativi minimi e facilità di sviluppo le tue priorità principali? Utilizzare Pub/Sub.

  • Sei disposto a sostenere altri costi operativi generali in termini della gestione della capacità degli argomenti, può funzionare con la disponibilità intrinseci dei servizi di zona e richiedono costi ridotti? Utilizza argomenti Lite a livello di zona.

  • Hai bisogno di una certa protezione da errori a livello di zona, sono disposti a sostenere un ulteriore overhead operativo in termini di gestione della capacità degli argomenti e richiedono il in termini di velocità effettiva? Utilizza argomenti Lite a livello di regione.

Per saperne di più sulle differenze di costo tra Pub/Sub e Pub/Sub Lite, consulta la pagina dei prezzi.

Tabella di confronto delle funzionalità

Funzionalità Pub/Sub Pub/Sub Lite
Access Transparency No
Capacità Provisioning automatico Esegui il provisioning prima dell'uso
Lingue della libreria client Java, Python, Go, Node.js, C++, C#, PHP, Ruby, SAP, ABAP Java, Python, Go
Abbonamenti tra progetti No
Chiavi di crittografia gestite dal cliente No
Argomenti messaggi non recapitabili No
Consegna "exactly-once" No
Integrazioni
Filtro dei messaggi Sì per gli attributi dei messaggi No
Replica dei messaggi No
Routing dei messaggi Globale A livello di zona o di regione
Convalida schema dei messaggi No
Multizona in una singola regione No Zona singola o doppia in una regione singola
Consegna ordinata Ordine in base alla chiave Ordinamento per partizione
Monitoraggio della conferma dei messaggi Per messaggio Cursore per partizione
Prezzi Pagamento a consumo Paghi per la capacità di cui esegui il provisioning
Endpoint REST No
Spazio dei nomi risorsa Globale A livello di zona o di regione
Periodo di conservazione Fino a 31 giorni Illimitato
Endpoint di servizio Globale e regionale Regionale
Archiviazione Illimitato Illimitato
Abbonamento

Replica dei dati

Gli argomenti Pub/Sub replicano i dati in tre zone all'interno di una regione. Per saperne di più sulla replica dei dati Pub/Sub, consulta Replica dei dati in un argomento.

Gli argomenti Pub/Sub Lite a livello di regione replicano i dati in due zone all'interno di una regione. Gli argomenti Pub/Sub Lite di zona archiviano i dati in un in una singola zona all'interno di una regione. Per ulteriori informazioni replica dei dati Pub/Sub Lite, consulta Replica dei dati in un argomento Lite.

Routing dei messaggi

Sia Pub/Sub che Pub/Sub Lite possono pubblicare da tutte le regioni e anche al di fuori di Google Cloud.

Pub/Sub instrada i messaggi a livello globale. Applicazioni ospitate su regione può pubblicare messaggi in un singolo argomento. I messaggi vengono elaborati nella regione più vicina consentita dai criteri della tua organizzazione inoltrate agli abbonati indipendentemente dall'origine.

Pub/Sub Lite instrada i messaggi all'interno di una regione o di una zona. I sottoscrittori devono connettersi all'istanza del servizio nella regione in cui in cui si trova l'argomento. Di conseguenza, publisher e abbonati devono mantenere la connettività alla stessa regione alle comunicazioni. I publisher possono pubblicare dati su a qualsiasi argomento, ma questa operazione potrebbe richiedere la connessione a una regione remota, aggiungendo latenza di rete. Sottoscrittori che devono pubblicare dati aggregati negli argomenti in località diverse devono connettersi a ogni istanza di servizio locale leggere i messaggi.

Spazio dei nomi risorsa

Gli argomenti e le sottoscrizioni Pub/Sub sono risorse globali. La Il servizio Pub/Sub può archiviare i messaggi qualsiasi regione consentito da un criterio di archiviazione degli argomenti. Inoltre, un argomento e una sottoscrizione può essere archiviato in progetti diversi, consentendo una fatturazione e controllo dell'accesso. Infine, i sottoscrittori ricevono gli stessi dati indipendentemente l'endpoint di servizio usato per connettersi a Pub/Sub quale endpoint di servizio è stato utilizzato dall'editore dei dati.

Gli argomenti e le sottoscrizioni a livello di zona sono risorse di zona. Questi devono trovarsi nello stesso progetto Cloud e nella stessa zona.

Gli argomenti e le sottoscrizioni Lite a livello di regione sono risorse di regione. Queste risorse devono trovarsi nello stesso progetto Cloud e nella stessa regione.

Per un elenco di regioni e zone supportate da Pub/Sub Lite, consulta Località Pub/Sub Lite

Gestione della capacità

Pub/Sub scala automaticamente. Capacità per la pubblicazione dei messaggi automaticamente, quindi puoi inviare e ricevere messaggi in qualsiasi momento, fino alle quote che configuri per il tuo progetto.

Viene eseguito manualmente il provisioning di Pub/Sub Lite. Devi configurare di partizioni per argomento Lite. Devi anche eseguire il provisioning dello spazio di archiviazione e la capacità di velocità effettiva massima. Il provisioning della capacità di velocità effettiva può essere eseguito Prenotazioni Lite.

Modalità di invio

Pub/Sub supporta diverse modalità di consegna dei messaggi. Questi includono Pull (polling tradizionale), Push (POST HTTPS), StreamingPull (RPC bidirezionale, per latenza e la massima efficienza) e trasferire HTTP REST e gRPC.

Pub/Sub Lite supporta solo lo streaming di messaggi pull gRPC dei carichi di lavoro. Per richiedere messaggi, i sottoscrittori stabiliscono flussi di dati bidirezionali e connessioni a ogni partizione.

Parallelismo

Pub/Sub utilizza il parallelismo per messaggio. Questa modalità consente di qualsiasi numero di messaggi, da uno o migliaia di client per singolo abbonamento.

Pub/Sub Lite usa il parallelismo basato sulle partizioni. Questo obbliga a di elaborare ogni partizione di dati in ordine lineare su un solo client in esecuzione in un'istanza Compute Engine. Questo limita il numero massimo di istanze client a al massimo il numero di partizioni.

Pipeline in modalità flusso

Pub/Sub e Pub/Sub Lite sono entrambi integrati con Dataflow per l'elaborazione dei flussi serverless e l'integrazione dei dati. Pub/Sub consente a Dataflow di scalare in modo più flessibile e supporta Dataflow SQL.

Per iniziare a utilizzare Dataflow e Pub/Sub o Pub/Sub Lite, prova questi tutorial: