Pub/Sub e Pub/Sub Lite sono entrambi servizi di messaggistica gestiti con scalabilità orizzontale. Pub/Sub rappresenta in genere la soluzione predefinita per la maggior parte dei casi d'uso di integrazione e analisi delle applicazioni. Pub/Sub Lite è consigliato solo per le applicazioni in cui raggiungere un costo estremamente basso giustifica un ulteriore lavoro operativo.
Pub/Sub offre una gamma più ampia di funzionalità, parallelismo per messaggio , routing globale e scalabilità automatica delle capacità delle risorse. In termini di replica dei messaggi, Pub/Sub garantisce la replica sincrona.
Pub/Sub Lite è una soluzione conveniente che compensa il carico di lavoro operativo, la disponibilità e le funzionalità in termini di efficienza dei costi. Pub/Sub Lite richiede la prenotazione e la gestione manuale della capacità di risorse. In Pub/Sub Lite, puoi scegliere argomenti Lite a livello di zona o di regione. Gli argomenti Lite a livello di regione offrono lo stesso SLA (accordo sul livello del servizio) con disponibilità degli argomenti Pub/Sub. Tuttavia, esistono differenze di affidabilità tra i due servizi in termini di replica dei messaggi.
Pub/Sub supporta la replica sincrona dei dati e utilizza tre zone. Pub/Sub garantisce la replica sincrona in almeno due zone e la migliore replica in una terza zona. Pub/Sub Lite supporta la replica asincrona dei dati. 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 per i requisiti aziendali
Le seguenti domande possono aiutarti a scegliere il servizio di messaggistica Pub/Sub corretto:
L'affidabilità, il costo operativo minimo e la facilità di sviluppo sono le tue massime priorità? Utilizza Pub/Sub.
Hai bisogno del costo per velocità effettiva più basso, disposto a sostenere un carico di lavoro operativo aggiuntivo in termini di gestione della capacità dell'argomento e puoi lavorare con i rischi di disponibilità inerenti ai servizi di zona? Utilizza argomenti Lite a livello di zona.
Hai bisogno del costo per velocità effettiva più basso, una certa protezione contro gli errori a livello di zona e sei disposto a sostenere un ulteriore carico operativo in termini di gestione della capacità dell'argomento? Utilizza argomenti Lite a livello di regione.
Esempio di prezzo
Immagina un sistema che pubblica e sottoscrive 10 MiBps (equivalenti a 600 MiB al min o 25 TiB al mese) di dati.
Di seguito è riportato l'elenco degli addebiti di esempio in Nord America per le diverse configurazioni Pub/Sub. I costi di Pub/Sub si basano sull'utilizzo. I costi di velocità effettiva Pub/Sub Lite si basano sulla capacità sottoposta a provisioning. In questo esempio si presume che il rapporto tra velocità effettiva effettiva e capacità di provisioning o utilizzo sia del 50%. Inoltre, si presume che l'archiviazione Pub/Sub Lite sia configurata per 24 ore.
- Per Pub/Sub, il costo è di 2000 € al mese.
- Per Pub/Sub Lite con argomenti di zona, il costo è di 169 $al mese.
- Per Pub/Sub Lite con argomenti a livello di area geografica, il costo è di 608 $al mese.
L'esempio precedente è un esempio molto semplice di un modello di fatturazione. Scopri di più sulle differenze di costo tra Pub/Sub e Pub/Sub Lite.
Tabella di confronto delle funzionalità
Funzionalità | Pub/Sub | Pub/Sub Lite |
---|---|---|
API Subscriber | Lease per messaggio, nessuna partizione | Partizioni ordinate con offset utilizzati per monitorare l'avanzamento |
Replica dei messaggi | Multizona in un'unica regione |
|
Capacità | Provisioning automatico | Esegui il provisioning prima dell'uso |
Prezzi | Pagamento a consumo | Paga per la capacità di cui esegui il provisioning |
Archiviazione | Illimitato | Illimitato |
Periodo di conservazione | Fino a 31 giorni | Illimitato |
Endpoint di servizio | Globale e a livello di regione | Regionale |
Spazio dei nomi delle risorse | Global |
|
Routing dei messaggi | Global |
|
Replica di dati
Gli argomenti Pub/Sub replicano i dati in tre zone all'interno di una regione. Per ulteriori informazioni sulla replica dei dati di 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 una singola zona all'interno di una regione. Per ulteriori informazioni sulla replica dei dati di Pub/Sub Lite, consulta Replica dei dati in un argomento Lite.
Routing dei messaggi
Sia Pub/Sub che Pub/Sub Lite possono pubblicare e iscriversi da tutte le aree geografiche, anche da origini esterne a Google Cloud.
Pub/Sub instrada i messaggi a livello globale. Le applicazioni ospitate in qualsiasi regione possono pubblicare messaggi in un singolo argomento. I messaggi vengono elaborati nella regione più vicina consentita dai criteri della tua organizzazione e inoltrati 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 si trova l'argomento. Di conseguenza, gli editori e gli abbonati devono mantenere la connettività di rete alla stessa area geografica per la comunicazione. Gli editori possono pubblicare dati su qualsiasi argomento da qualsiasi luogo, ma ciò potrebbe richiedere la connessione a una regione remota, aggiungendo latenza di rete. I sottoscrittori che necessitano di dati aggregati pubblicati per argomenti in località diverse devono connettersi a ogni istanza di servizio locale pertinente per leggere i messaggi.
Spazio dei nomi risorsa
Gli argomenti e le sottoscrizioni Pub/Sub sono risorse globali. Il servizio Pub/Sub può archiviare i messaggi in qualsiasi regione consentite da un criterio di archiviazione degli argomenti. Inoltre, un argomento e una sottoscrizione a tale argomento possono essere archiviati in diversi progetti, consentendo un controllo granulare della fatturazione e dell'accesso. Infine, i sottoscrittori 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 Lite a livello di zona sono risorse di zona. Queste risorse devono trovarsi nello stesso progetto e nella stessa zona Cloud.
Gli argomenti e le sottoscrizioni Lite a livello di regione sono risorse a livello di regione. Queste risorse devono trovarsi nello stesso progetto e nella stessa area geografica Cloud.
Per un elenco delle regioni e delle zone supportate da Pub/Sub Lite, consulta Località Pub/Sub Lite.
Gestione della capacità
Pub/Sub scala automaticamente. Il provisioning della capacità di pubblicazione dei messaggi viene eseguito automaticamente, quindi puoi inviare e ricevere messaggi in qualsiasi momento, fino alle quote configurate per il tuo progetto.
Viene eseguito manualmente il provisioning di Pub/Sub Lite. Devi configurare il numero di partizioni per argomento Lite. Devi inoltre eseguire il provisioning della capacità di archiviazione e velocità effettiva. È possibile eseguire il provisioning della capacità di velocità effettiva utilizzando le prenotazioni Lite.
Modalità di invio
Pub/Sub supporta più modalità di recapito dei messaggi. Includono Pull (polling tradizionale), push (HTTPS POST), StreamingPull (RPC bidirezionale, per la latenza e la massima efficienza) ed eseguire il pull su HTTP REST e gRPC.
Pub/Sub Lite supporta solo la trasmissione in streaming di messaggi pull di gRPC. Per richiedere messaggi, i sottoscrittori stabiliscono connessioni di streaming bidirezionali con ogni partizione.
Parallelismo
Pub/Sub utilizza il parallelismo per messaggio. Questo consente l'elaborazione in parallelo di qualunque numero di messaggi, da uno o migliaia di client per una singola sottoscrizione.
Pub/Sub Lite utilizza il parallelismo basato sulla partizione. In questo modo il client deve elaborare ciascuna partizione di dati in ordine lineare su una singola istanza del client. Questo limita il numero massimo di istanze client al numero massimo di partizioni.
Pipeline in modalità flusso
Sia Pub/Sub che Pub/Sub Lite sono integrati con Dataflow per l'elaborazione e l'integrazione dei dati serverless. 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: