Migrazione da Pub/Sub Lite a Pub/Sub

Questo documento fornisce informazioni su come eseguire la migrazione delle applicazioni e dei dati Pub/Sub Lite da Pub/Sub Lite a Pub/Sub.

Per eseguire la migrazione in Pub/Sub, utilizza la funzionalità di esportazione della sottoscrizione di Pub/Sub Lite. La funzionalità di esportazione della sottoscrizione converte i messaggi da un messaggio Pub/Sub Lite in un messaggio Pub/Sub, utilizzando un tipo di sottoscrizione denominata 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 ciascun servizio presenta differenze fondamentali nel funzionamento. Per comprendere queste differenze nei dettagli, leggi Scegliere Pub/Sub o Pub/Sub Lite.

Le sezioni seguenti descrivono alcune delle principali differenze tra i singoli servizi e rilevanti per la migrazione da un servizio all'altro. tra cui:

  • Località e replica dei dati
  • Modalità di invio
  • Parallelismo e ordinamento
  • Riproduci di nuovo ed elimina definitivamente
  • 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 di zona archiviano i dati in una singola 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 replica i dati in modo diverso.

Quando utilizzi Pub/Sub, puoi assicurarti che i dati siano archiviati nelle regioni preferite utilizzando i criteri di archiviazione dei messaggi di Pub/Sub.

  • Pub/Sub non fornisce il controllo sulle zone specifiche in cui vengono archiviati i messaggi. Replica sempre i dati 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 al criterio dell'organizzazione relativo alla restrizione sulla località delle risorse. Se non imposti esplicitamente un criterio dell'organizzazione, Pub/Sub consente tutte le regioni e ne seleziona automaticamente una in cui archiviare i messaggi.

Modalità di invio

Punto di migrazione chiave

Se vuoi replicare il comportamento di Pub/Sub Lite in Pub/Sub (ad esempio, bassa latenza e alta efficienza), implementa i client consumer utilizzando l'API StreamingPull. In alternativa, puoi implementare la sottoscrizione Pub/Sub utilizzando altre modalità di invio disponibili, ad esempio la consegna 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 sulle 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 di Pub/Sub.

Quando utilizzi la sottoscrizione di esportazione in Pub/Sub Lite, la chiave Pub/Sub Lite viene utilizzata come chiave di ordinamento nel messaggio Pub/Sub. Ciò garantisce che i messaggi continuino a essere recapitati in ordine.

Per garantire la compatibilità con i messaggi Pub/Sub, verifica che le chiavi Pub/Sub Lite contengano solo caratteri codificati UTF-8.

  • Le chiavi Pub/Sub Lite vengono archiviate come byte.
  • Le chiavi di ordinamento Pub/Sub vengono archiviate come stringhe.

Le chiavi di ordinamento Pub/Sub hanno una velocità effettiva massima del publisher di 1 MBps. L'ordinamento dei messaggi in Pub/Sub è garantito solo all'interno di una singola regione. Per ricevere messaggi ordinati in Pub/Sub, devi abilitare esplicitamente l'ordinamento dei messaggi nelle impostazioni di sottoscrizione.

Riproduci di nuovo ed elimina definitivamente

  • Pub/Sub Lite Pub/Sub Lite supporta la funzionalità seek senza richiedere ulteriori configurazioni.

  • Pub/Sub Pub/Sub supporta la funzionalità di ricerca ma richiede un'ulteriore configurazione.

Punto di migrazione chiave

Per abilitare la funzionalità di ricerca, Pub/Sub richiede di configurare esplicitamente le impostazioni sia per l'argomento che per la sottoscrizione.

  • Argomento: devi configurare un periodo di conservazione dei messaggi
  • Sottoscrizione: devi configurare una conservazione dei messaggi confermati.

La configurazione di queste impostazioni è fondamentale se hai bisogno dell'esatta parità con Pub/Sub Lite o se la migrazione richiede la riproduzione o l'eliminazione definitiva dei messaggi. Indipendentemente dai tuoi requisiti specifici, la capacità di cercare e rielaborare i messaggi è una preziosa protezione durante una migrazione a fasi. Consente il rollback e riduce al minimo la perdita di dati in caso di problemi imprevisti.

Gestione della capacità e prezzi

  • Pub/Sub Lite Il provisioning della capacità di Pub/Sub Lite viene eseguito manualmente configurando la capacità di archiviazione e la velocità effettiva con le prenotazioni di Pub/Sub Lite.

  • Pub/Sub Pub/Sub è completamente gestito e scala automaticamente.

Punto di migrazione chiave

Durante la transizione a Pub/Sub, puoi gestire la capacità e i prezzi impostando override delle quote o richiedendo una modifica della quota per le risorse Pub/Sub.

Il motivo principale per gestire la capacità di Pub/Sub è il rispetto di rigorosi requisiti di costo. Se non hai limiti di costo rigorosi, Pub/Sub può gestire le risorse in modo efficiente senza dover intervenire eccessivamente. 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 abbonamento per l'esportazione di Pub/Sub Lite. La sottoscrizione Esporta consente di eseguire la migrazione dell'applicazione Pub/Sub Lite in più fasi. L'adozione di un approccio graduale consente di aggiornare, testare e monitorare la migrazione in modo iterativo, riducendo al minimo il rischio di errori e tempi di inattività.

Prima di iniziare

  • Valuta l'applicazione Pub/Sub Lite esistente e mappa le caratteristiche Pub/Sub corrispondenti di cui hai bisogno.
  • Assicurati che Pub/Sub soddisfi tutti i requisiti funzionali e aziendali.

Flusso di lavoro della migrazione per fasi

I passaggi seguenti forniscono una panoramica del flusso di lavoro per l'esportazione degli abbonamenti.

  1. Crea gli argomenti Pub/Sub pertinenti e una sottoscrizione all'argomento.
  2. Crea una sottoscrizione per l'esportazione Pub/Sub Lite.
  3. Abbonarsi sia alle sottoscrizioni Pub/Sub che Pub/Sub Lite.
  4. Aggiorna gradualmente i publisher per inviare messaggi all'argomento Pub/Sub anziché all'argomento Pub/Sub Lite.
  5. Verifica che il carico di lavoro di cui è stata eseguita la migrazione funzioni come previsto.
  6. Rifiuta i publisher e gli abbonati di Pub/Sub Lite.

Fasi della migrazione

Le sezioni seguenti forniscono dettagli su ogni passaggio del flusso di lavoro di migrazione per fasi.

Creare argomenti e sottoscrizioni Pub/Sub

Creare un argomento Pub/Sub corrispondente e la relativa sottoscrizione. In questa fase devi configurare le impostazioni degli argomenti e delle sottoscrizioni obbligatorie, come la conservazione dei messaggi, la conferma dei messaggi e i criteri di archiviazione dei messaggi.

Se necessario, stabilisci e imposta le quote per evitare un uso eccessivo e una fatturazione imprevista. Inoltre, ti consigliamo vivamente di configurare un argomento Pub/Sub Lite con messaggi non recapitabili per acquisire i messaggi che non riescono a eseguire la migrazione a Pub/Sub. In questo modo puoi risolvere gli errori e identificare la causa principale degli errori di esportazione, nonché inviare di nuovo i messaggi non riusciti all'argomento corretto, evitando perdite 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 nell'argomento Pub/Sub corrispondente. Anziché impostare singolarmente la capacità di velocità effettiva per ogni sottoscrizione di esportazione, utilizza una prenotazione Pub/Sub Lite per gestire in modo efficiente la velocità effettiva per tutte le sottoscrizioni di esportazione collettivamente. Entro la fine di questa fase, gli argomenti Pub/Sub Lite e Pub/Sub ricevono entrambi gli stessi messaggi dal momento in cui sono state create le sottoscrizioni di esportazione.

Puoi quindi utilizzare gli argomenti Pub/Sub per sviluppare e testare in modo incrementale i client sottoscrittori in fasi isolate. Questo approccio riduce al minimo le interruzioni delle applicazioni Pub/Sub Lite esistenti.

Doppia sottoscrizione agli argomenti Pub/Sub Lite e Pub/Sub

In un ambiente di sviluppo, aggiorna i client sottoscrittori 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 diverse opzioni. A differenza di Pub/Sub Lite, Pub/Sub offre diverse modalità di invio (pull e push), quindi scegli quella che meglio si adatta ai 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 consumer, esegui la migrazione graduale di ogni applicazione una alla volta. Per ogni applicazione dell'abbonato, esegui il sottoscrittore Pub/Sub Lite e il nuovo sottoscrittore Pub/Sub in parallelo, in modo da poter verificare il comportamento e le prestazioni del nuovo sottoscrittore. Monitora attentamente entrambi i sottoscrittori per garantire la coerenza della consegna dei messaggi, la gestione degli errori e la funzionalità generale. Dopo aver eseguito correttamente la migrazione e la convalida di tutti gli abbonati, dismetti i client precedenti del sottoscrittore Pub/Sub Lite.

Aggiorna publisher

Dopo che tutti i sottoscrittori utilizzano correttamente i messaggi da 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 di Pub/Sub. Ciò garantisce di poter spostare gradualmente il traffico da Pub/Sub Lite a Pub/Sub.

Disattivare Pub/Sub Lite

Dopo aver eseguito correttamente la migrazione di tutti i sottoscrittori e publisher in Pub/Sub, puoi arrestare le risorse Pub/Sub Lite. Ciò consente di evitare costi inutili per l'infrastruttura inutilizzata.

Passaggi successivi