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, consulta prima la sezione Che cos'è Pub/Sub.
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 di una grande preoccupazione.
Pub/Sub offre una gamma più ampia di funzionalità, parallelismo per messaggio, 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. In Pub/Sub Lite, puoi scegliere argomenti Lite zonali o regionali. 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 a livello 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 | Sì | No |
Capacità | Provisioning automatico | Esegui il provisioning prima dell'utilizzo |
Lingue della libreria client | Java, Python, Go, Node.js, C++, C#, PHP, Ruby, SAP, ABAP | Java, Python, Go |
Abbonamenti tra progetti | Sì | No |
Chiavi di crittografia gestite dal cliente | Sì | No |
Argomenti messaggi non recapitabili | Sì | No |
Consegna "exactly-once" | Sì | No |
Integrazioni | ||
Filtro dei messaggi | Sì per gli attributi dei messaggi | No |
Replica dei messaggi | Sì | No |
Routing dei messaggi | Globale | A livello di zona o di regione |
Convalida schema dei messaggi | Sì | No |
Più zone 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 | Sì | No |
Spazio dei nomi risorsa | Globale | A livello di zona o di regione |
Periodo di conservazione | Fino a 31 giorni | Illimitato |
Endpoint di servizio | Globali e regionali | 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, gli abbonati ricevono gli stessi dati indipendentemente dall'endpoint di servizio utilizzato per connettersi a Pub/Sub o dall'endpoint di servizio utilizzato dal publisher 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 regionali sono risorse regionali. Queste risorse devono trovarsi nella stessa regione e nello stesso progetto Cloud.
Per un elenco delle regioni e delle zone supportate da Pub/Sub Lite, consulta Località Pub/Sub Lite
Gestione della capacità
Pub/Sub è scalabile automaticamente. Capacità di 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 più modalità di invio 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: