Questo documento fornisce informazioni su come eseguire la migrazione delle applicazioni e dei dati di Pub/Sub Lite da Pub/Sub Lite a Pub/Sub.
Per eseguire la migrazione a Pub/Sub, utilizza la funzionalità di esportazione dell'abbonamento di Pub/Sub Lite. La funzionalità di sottoscrizione di esportazione consente di convertire i messaggi da Pub/Sub Lite a un messaggio Pub/Sub utilizzando un tipo di sottoscrizione chiamato sottoscrizione di esportazione.
Differenze tra Pub/Sub Lite e Pub/Sub
Pub/Sub e Pub/Sub Lite sono entrambi servizi di messaggistica scalabili orizzontalmente, ma ogni servizio presenta differenze chiave nel funzionamento. Per comprendere queste differenze in dettaglio, leggi la sezione Scegliere tra Pub/Sub o Pub/Sub Lite.
Le sezioni seguenti illustrano alcune delle differenze principali tra ciascun servizio che sono pertinenti durante la migrazione da un servizio all'altro. Sono incluse le seguenti considerazioni:
- Località e replica dei dati
- Modalità di invio
- Parallelismo e ordinamento
- Riproduzione ed eliminazione
- Gestione della capacità e prezzi
Località e replica dei dati
Pub/Sub Lite. Gli argomenti Pub/Sub Lite a livello di regione replicano i dati in una zona secondaria all'interno della stessa regione. Gli argomenti Pub/Sub Lite in base alla zona archiviano i dati in un'unica zona senza replica.
Pub/Sub. Pub/Sub replica i dati in tre zone all'interno di una regione.
Punto di migrazione chiave
È importante capire in che modo ogni servizio esegue la replica dei dati in modo diverso.
Quando utilizzi Pub/Sub, puoi assicurarti che i dati vengano archiviati nelle regioni preferite utilizzando le policy di archiviazione dei messaggi di Pub/Sub.
Pub/Sub non fornisce il controllo sulle zone specifiche in cui vengono archiviati i messaggi. ma li replica sempre in tre zone all'interno di una regione, come stabilito dal criterio di archiviazione dei messaggi.
Se non specifichi un criterio di archiviazione dei messaggi, Pub/Sub determina automaticamente dove vengono archiviati i messaggi in base ai criteri dell'organizzazione relativi alle restrizioni sulla località delle risorse. Se non imposti esplicitamente un criterio dell'organizzazione, Pub/Sub consente tutte le regioni e ne seleziona automaticamente una per archiviare i messaggi.
Modalità di invio
Pub/Sub Lite. Per l'invio dei messaggi, Pub/Sub Lite supporta solo l'API RPC StreamingPull.
Pub/Sub. Per il recapito dei messaggi, Pub/Sub offre diverse opzioni di recapito dei messaggi, tra cui il recapito dei messaggi StreamingPull.
Punto di migrazione chiave
Se vuoi replicare il comportamento di Pub/Sub Lite in Pub/Sub (ad esempio, bassa latenza ed elevata efficienza), implementa i client consumer utilizzando l'API StreamingPull. In alternativa, puoi implementare la sottoscrizione Pub/Sub utilizzando altre modalità di invio disponibili, come l'invio push.
Parallelismo e ordinamento
Pub/Sub Lite. Pub/Sub Lite supporta il parallelismo per partizione.
Pub/Sub. Pub/Sub supporta il parallelismo per messaggio.
Punto di migrazione chiave
Pub/Sub non è una soluzione basata su partizioni. I messaggi Pub/Sub possono anche essere elaborati contemporaneamente, il che significa che l'ordine dei messaggi non è garantito. Se la tua applicazione richiede l'ordinamento dei messaggi, utilizza le chiavi di ordinamento Pub/Sub.
Quando utilizzi l'abbonamento di esportazione in Pub/Sub Lite, la chiave Pub/Sub Lite viene utilizzata come chiave di ordinamento nel messaggio Pub/Sub. In questo modo, i messaggi continueranno a essere recapitati in ordine.
Per garantire la compatibilità con i messaggi Pub/Sub, verifica che le chiavi Pub/Sub Lite contengano solo caratteri con codifica UTF-8.
- Le chiavi Pub/Sub Lite vengono memorizzate come byte.
- Le chiavi di ordinamento Pub/Sub vengono memorizzate come stringhe.
Le chiavi di ordinamento Pub/Sub hanno una velocità effettiva massima del publisher di 1 MB/s. L'ordinamento dei messaggi in Pub/Sub è garantito solo all'interno di un'unica regione. Per ricevere messaggi ordinati in Pub/Sub, devi attivare esplicitamente l'ordinamento dei messaggi nelle impostazioni dell'abbonamento.
Riproduzione ed eliminazione
Pub/Sub Lite. Pub/Sub Lite supporta la funzionalità di avanzamento senza richiedere alcuna configurazione aggiuntiva.
Pub/Sub. Pub/Sub supporta la funzionalità di ricerca, ma richiede una configurazione aggiuntiva per la sua impostazione.
Punto di migrazione chiave
Per attivare la funzionalità di ricerca, Pub/Sub richiede di configurare esplicitamente le impostazioni sia per l'argomento sia per la sottoscrizione.
- Argomento: devi configurare una durata di conservazione dei messaggi
- Abbonamento: devi configurare una conservazione dei messaggi confermati.
La configurazione di queste impostazioni è fondamentale se hai bisogno di una parità esatta con Pub/Sub Lite o se la migrazione richiede la riproduzione o l'eliminazione dei messaggi. Indipendentemente dai tuoi requisiti specifici, la possibilità di cercare e rielaborare i messaggi è una salvaguardia preziosa durante una migrazione graduale. Consente il rollback e riduce al minimo la perdita di dati in caso di problemi imprevisti.
Gestione della capacità e prezzi
Pub/Sub Lite. La capacità di Pub/Sub Lite viene eseguita manualmente in base alla configurazione della capacità di archiviazione e della velocità effettiva utilizzando le prenotazioni di Pub/Sub Lite.
Pub/Sub. Pub/Sub è completamente gestito e si scala automaticamente.
Punto di migrazione chiave
Durante la transizione a Pub/Sub, puoi gestire la capacità e i prezzi impostando le sostituzioni delle quote o richiedendo una modifica della quota per le risorse Pub/Sub.
Il motivo principale per gestire la capacità di Pub/Sub è rispettare requisiti di costo rigorosi. Se non hai limiti di costo rigidi, Pub/Sub può gestire in modo efficiente le risorse senza molto intervento. Pub/Sub viene fatturato in base all'utilizzo. Per informazioni dettagliate, consulta i prezzi di Pub/Sub.
Pianificare una migrazione
Per eseguire la migrazione da Pub/Sub Lite a Pub/Sub, puoi utilizzare la funzionalità di esportazione delle sottoscrizioni Pub/Sub Lite. La sottoscrizione di esportazione ti consente di eseguire la migrazione della tua applicazione Pub/Sub Lite in fasi. L'adozione di un approccio graduale ti consente di aggiornare, testare e monitorare la migrazione in modo iterativo, riducendo al minimo il rischio di errori e tempi di riposo.
Prima di iniziare
- Valuta l'applicazione Pub/Sub Lite esistente e mappa le funzionalità Pub/Sub corrispondenti di cui hai bisogno.
- Assicurati che Pub/Sub soddisfi tutti i tuoi requisiti funzionali e aziendali.
Flusso di lavoro di migrazione graduale
I passaggi riportati di seguito forniscono una panoramica del flusso di lavoro di migrazione dell'abbonamento all'esportazione.
- Crea gli argomenti Pub/Sub pertinenti e una sottoscrizione all'argomento.
- Crea una sottoscrizione di esportazione Pub/Sub Lite.
- Abbonati sia alle sottoscrizioni Pub/Sub sia a quelle Pub/Sub Lite.
- Aggiorna gradualmente i publisher in modo che inviino messaggi all'argomento Pub/Sub anziché all'argomento Pub/Sub Lite.
- Verifica che il carico di lavoro sottoposto a migrazione funzioni come previsto.
- Disattivare i publisher e i sottoscrittori Pub/Sub Lite.
Fasi della migrazione
Le sezioni seguenti forniscono dettagli su ogni passaggio del flusso di lavoro della migrazione graduale.
Creare argomenti e sottoscrizioni Pub/Sub
Crea un argomento Pub/Sub corrispondente e la relativa sottoscrizione. In questa fase, configuri le impostazioni obbligatorie per gli argomenti e gli abbonamenti, ad esempio le norme relative alla conservazione, alla conferma e all'archiviazione dei messaggi.
Se necessario, stabilisci e configura le quote per evitare un utilizzo eccessivo e una fatturazione inaspettata. Soprattutto, ti consigliamo vivamente di configurare un argomento Pub/Sub Lite per i messaggi non recapitabili per acquisire eventuali messaggi di cui non riesce a essere eseguita la migrazione a Pub/Sub. In questo modo puoi risolvere i problemi, identificare la causa principale degli errori di esportazione e inviare nuovamente i messaggi non riusciti all'argomento corretto, evitando la perdita di dati.
Creare sottoscrizioni di esportazione Pub/Sub Lite
Per ogni argomento, crea una sottoscrizione di esportazione Pub/Sub Lite per esportare i messaggi dall'argomento Pub/Sub Lite all'argomento Pub/Sub corrispondente. Invece di impostare singolarmente la capacità di throughput per ogni abbonamento all'esportazione, utilizza una prenotazione Pub/Sub Lite per gestire in modo efficiente il throughput per tutti i tuoi abbonamenti all'esportazione collettivamente. Al termine di questa fase, gli argomenti Pub/Sub Lite e Pub/Sub ricevono entrambi gli stessi messaggi dal momento in cui sono stati creati gli abbonamenti per l'esportazione.
Puoi quindi utilizzare gli argomenti Pub/Sub per sviluppare e testare in modo incrementale i client sottoscrittori in fasi isolate. Questo approccio minimizza l'interruzione delle applicazioni Pub/Sub Lite esistenti.
Iscriverti con doppia sottoscrizione agli argomenti Pub/Sub Lite e Pub/Sub
In un ambiente di sviluppo, aggiorna i client sottoscrittore in modo che leggano i messaggi direttamente dagli argomenti Pub/Sub utilizzando la libreria client Pub/Sub appropriata. A differenza di Pub/Sub Lite, Pub/Sub offre più A differenza di Pub/Sub Lite, Pub/Sub offre più modalità di invio (pull e push), quindi scegli quella più in linea con i requisiti della tua applicazione.
Per emulare lo stesso comportamento di Pub/Sub Lite, configura la tua istanza Pub/Sub con l'API StreamingPull.
In un sistema con più applicazioni per i consumatori, esegui gradualmente la migrazione di ogni applicazione singolarmente. Per ogni applicazione sottoscrittore, esegui il sottoscrittore Pub/Sub Lite e il nuovo sottoscrittore Pub/Sub in parallelo per verificare il comportamento e le prestazioni del nuovo sottoscrittore. Monitora attentamente entrambi gli abbonati per garantire la coerenza del recapito dei messaggi, la gestione degli errori e la funzionalità complessiva. Dopo aver eseguito la migrazione e la convalida di tutti gli abbonati, ritira i vecchi client di abbonati Pub/Sub Lite.
Aggiornare i publisher
Dopo che tutti gli iscritti hanno iniziato a utilizzare i messaggi di Pub/Sub, puoi aggiornare gradualmente i publisher in modo che inviino i messaggi direttamente agli argomenti Pub/Sub. Per farlo, aggiorna i publisher in modo che utilizzino le librerie client Pub/Sub. In questo modo, puoi trasferire gradualmente il traffico da Pub/Sub Lite a Pub/Sub.
Disattivare Pub/Sub Lite
Dopo aver eseguito la migrazione di tutti gli abbonati e i publisher a Pub/Sub, puoi disattivare le risorse Pub/Sub Lite. In questo modo, eviterai di sostenere costi non necessari per l'infrastruttura inutilizzata.