Migrazione del traffico

La migrazione del traffico cambia il routing delle richieste tra le versioni all'interno di un servizio della tua applicazione, spostando il traffico da una o più versioni a una singola nuova versione.

Per informazioni sulla suddivisione del traffico tra due o più versioni del vedi Suddivisione del traffico.

Prima di iniziare

Prima di poter configurare il traffico verso una versione, devi assicurarti che l'account utente Includa i privilegi richiesti.

Migrazione graduale del traffico

Nell'ambiente standard, puoi scegliere di indirizzare le richieste alla destinazione o immediatamente la versione precedente o gradualmente.

Per impostazione predefinita, le richieste di preparazione vengono disattivati e il traffico viene migrato immediatamente completamente gestita.

Puoi anche scegliere di attivare richieste di riscaldamento se vuoi che in modo graduale in un completamente gestita. Se esegui immediatamente la migrazione del traffico a una nuova versione senza istanze in esecuzione, si verificherà un picco di latenza per le richieste di caricamento. Il deployment di una nuova versione con lo stesso nome di una versione esistente comporta una migrazione immediata del traffico. Tutte le istanze della versione precedente vengono immediatamente chiuse. Si verificherà un picco di latenza a causa delle richieste di caricamento della nuova versione.

Se le richieste di warmup sono abilitate, puoi eseguire la migrazione del traffico tra le versioni che si trovano in ambienti diversi solo specificando di eseguire la migrazione immediatamente.

Aggiunta di richieste di warmup all'applicazione

Quando le richieste di riscaldamento sono abilitate, la migrazione del traffico viene eseguita gradualmente inviando prima una richiesta di preparazione alle nuove istanze prima che queste ricevano eventuali utenti richieste. Le richieste di preriscaldamento migliorano il tempo di risposta dell'utente consentendo alla versione attualmente in grado di ricevere traffico di gestire queste richieste, ma la migrazione del traffico alla nuova versione può richiedere un breve periodo di tempo durante la creazione delle nuove istanze.

Quando le richieste di riscaldamento non sono abilitate, le richieste degli utenti vengono inviate ai nuovi prima della loro creazione. A causa del ritardo causato dalla creazione le nuove istanze e il caricamento del codice dell'applicazione, la latenza può verificarsi diverse.

Per evitare la latenza e abilitare le richieste di riscaldamento, includi l'elemento inbound_services nel file di configurazione prima del deployment della tua applicazione in App Engine.

Ad esempio, includi quanto segue nel app.yaml prima di eseguirlo in App Engine:

inbound_services:
- warmup

Per i dettagli completi sull'abilitazione delle richieste di riscaldamento, consulta Configurazione delle richieste di riscaldamento per migliorare le prestazioni.

Migrazione del traffico a una nuova versione

Console

Per eseguire la migrazione del traffico nella console Google Cloud, vai alla pagina Versioni:

Vai alla pagina Versioni

  1. Seleziona la versione a cui vuoi eseguire la migrazione del 100% del traffico.
  2. Fai clic su Esegui la migrazione del traffico.
  3. (Facoltativo) Quando le richieste di warmup sono attivate, la migrazione del traffico avviene gradualmente. Per eseguire subito la migrazione del traffico, seleziona l'opzione nella sezione Mostra opzioni avanzate.

gcloud

Dopo aver installato Google Cloud CLI, esegui il comando gcloud app services set-traffic per eseguire la migrazione del 100% del traffico a una singola versione. Ad esempio:

  • Per eseguire la migrazione del traffico immediatamente:
    gcloud app services set-traffic [MY_SERVICE] --splits [MY_VERSION]=1
  • Per eseguire la migrazione graduale del traffico, includi il campo facoltativo --migrate flag:
    gcloud app services set-traffic [MY_SERVICE] --splits [MY_VERSION]=1 --migrate

API

Per eseguire la migrazione del traffico in modo programmatico, puoi utilizzare l'API Admin, consulta la sezione Migrazione e suddivisione Traffico per informazioni dettagliate.