Configurare una distribuzione di API Gateway Canary Release - Amazon API Gateway

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurare una distribuzione di API Gateway Canary Release

La versione Canary è una strategia di sviluppo software in cui una nuova versione di API (così come di altro software) viene distribuita a scopo di test e la versione base rimane utilizzata come versione di produzione per le normali operazioni nella stessa fase. In questa documentazione la versione di base viene detta release di produzione. È possibile applicare una release Canary a qualsiasi versione non di produzione a scopo di test.

In una distribuzione Canary Release, il API traffico totale viene suddiviso casualmente in una versione di produzione e una versione Canary con un rapporto preconfigurato. In genere, la versione Canary riceve una piccola percentuale di API traffico e la versione di produzione occupa il resto. Le API funzionalità aggiornate sono visibili solo al API traffico che attraversa le isole Canarie. Puoi modificare la percentuale di traffico nella release Canary per ottimizzare le prestazioni o la copertura dei test.

Mantenendo limitato il traffico nella release Canary e la selezione casuale, la maggior parte degli utenti non riscontra conseguenze negative a causa di bug potenziali nella nuova versione e nessun utente riscontra conseguenze negative durature.

Se i parametri di test soddisfano i requisiti, puoi promuovere la release Canary a release di produzione e disabilitarne la distribuzione. Le nuove caratteristiche vengono così rese disponibili nella fase di produzione.

Distribuzione della versione Canary in Gateway API

In API Gateway, una versione canary release utilizza la fase di distribuzione per la versione di produzione della versione base di anAPI, e allega alla fase una versione canary per le nuove versioni, relativa alla versione base, di. API La fase è associata alla distribuzione iniziale e la release Canary alle distribuzioni successive. All'inizio, sia lo stage che il canary puntano alla stessa versione. API In questa sezione i termini fase e release di produzione vengono usati in modo intercambiabile, come pure i termini Canary e release Canary.

Per implementare una versione canary API con una release canary, è necessario creare una distribuzione canary release aggiungendo impostazioni canary alla fase di distribuzione regolare. Le impostazioni canary descrivono la versione canary sottostante e la fase rappresenta la versione di produzione di questa distribuzione. API Per aggiungere le impostazioni Canary, imposta canarySettings nella fase di distribuzione e specifica quanto segue:

Dopo l'abilitazione di una release Canary, la fase di distribuzione non può essere associata a un'altra distribuzione di una release non Canary fino a quando la release Canary non viene disabilitata e le impostazioni Canary non vengono rimosse dalla fase.

Quando abiliti la registrazione API dell'esecuzione, la versione Canary ha i propri log e le proprie metriche generati per tutte le richieste Canary. Vengono segnalate a un gruppo di log Logs in fase di produzione e a un gruppo di log CloudWatch Logs specifico per Canary. CloudWatch Lo stesso vale per il logging degli accessi. I registri separati, specifici per Canary, sono utili per convalidare le nuove API modifiche e decidere se accettarle e promuovere l'immissione delle Canarie nella fase di produzione, oppure per eliminare le modifiche e annullare l'emissione per Canary dalla fase di produzione.

Il gruppo di log delle esecuzioni della fase di produzione è denominato API-Gateway-Execution-Logs/{rest-api-id}/{stage-name} e il gruppo di log delle esecuzioni della release Canary è denominato API-Gateway-Execution-Logs/{rest-api-id}/{stage-name}/Canary. Per il logging degli accessi, è necessario creare un nuovo gruppo di log o sceglierne uno esistente. Al nome del gruppo di log degli accessi della release Canary scelto viene aggiunto il suffisso /Canary.

Una versione canary può utilizzare lo stage cache, se abilitato, per memorizzare le risposte e utilizzare le voci memorizzate nella cache per restituire i risultati alle successive richieste Canary, entro un periodo preconfigurato (). time-to-live TTL

In una distribuzione Canary Release, la release di produzione e la release canary di API possono essere associate alla stessa versione o a versioni diverse. Quando sono associate a versioni diverse, le risposte per le richieste di produzione e Canary vengono memorizzate nella cache separatamente e la cache di fase restituisce i risultati corrispondenti per le richieste di produzione e Canary. Quando la release di produzione e la release Canary sono associate alla stessa distribuzione, la cache di fase usa una singola chiave cache per entrambi i tipi di richieste e restituisce la stessa risposta per le stesse richieste dalla release di produzione e dalla release Canary.