Gestione del controllo delle versioni dell'API

Questa pagina descrive come eseguire il controllo delle versioni per l'API e come eseguire il deployment più versioni.

Suggerimenti per la gestione delle versioni delle API

Per la gestione delle versioni dell'API, tieni in considerazione questi consigli:

  • Quando vuoi introdurre una modifica incrementale, ma non che comporti interruzioni, mantieni costante la versione dell'API ed esegui il deployment nell'API esistente.
  • Quando introduci una modifica che provoca un errore nell'API, incrementa la versione dell'API.
  • Per ulteriore protezione, incrementa la versione dell'applicazione App Engine come beh, quindi esegui il deployment della nuova versione API nel nuovo App Engine dell'applicazione. In questo modo puoi utilizzare la flessibilità integrata di App Engine per passare rapidamente da una versione all'altra e pubblicare le app dalle vecchie versioni funzionanti in caso di problemi imprevisti.

La tabella seguente è un'illustrazione delle versioni a cascata dell'API backend diverse versioni dell'applicazione App Engine.

Versione dell'applicazione Versione API backend
1
  • v1 --> v1 (2) --> v1 (n)
2
  • v1 (n)
  • v2 --> v2 (2) --> v2 (n)
3
  • v1 (n)
  • v2 (n)
  • v3 --> v3 (2) --> v3 (n)

Come mostrato nella tabella, vengono implementati aggiornamenti incrementali e non inversi alla versione 1 dell'API, ciascuno dei quali sovrascrive la versione precedente. Quando le modifiche che provocano un errore vengono la versione API viene incrementata alla v2 e viene eseguito il deployment in una nuova Versione dell'applicazione App Engine. In questo modo, se necessario, puoi tornare alla versione precedente delle applicazioni.

Nella tabella, nota che la versione 2 dell'applicazione supporta sia l'ultima versione v1 e la nuova versione v2 dell'API. Se non elimini il codice esistente della versione 1 dal progetto, quando esegui il deployment del progetto, sia v2 che vl (n) della tua API vengono eseguiti nella versione 2 dell'applicazione.

Deployment su più versioni dell'applicazione

Quando esegui il deployment dell'API backend, ne esegui il deployment nell'ID progetto del il progetto Google Cloud che hai creato per l'API e devi inoltre specifica la versione di App Engine in cui esegui il deployment. Devi specificare la versione dell'app di App Engine nell'elemento <version> della /WEB-INF/appengine-web.xml . La versione dell'app App Engine non è la stessa del numero di versione dell'API di backend, che specifichi nell'attributo version dell'annotazione @Api.

versioni api

Come mostrato nella figura precedente, puoi eseguire il deployment di più versioni dell'API nella stessa versione di App Engine. Inoltre, puoi avere molte App Engine tutte le versioni di un'applicazione.

Accesso alle versioni API di cui è stato eseguito il deployment in una versione di pubblicazione

Il primo Versione App Engine in cui esegui il deployment dell'API è la versione di pubblicazione. Questa versione viene eseguita all'URL http://YOUR_PROJECT_ID.appspot.com, dove YOUR_PROJECT_ID rappresenta il tuo ID progetto Google Cloud. Puoi accedere a tutte le versioni API di cui è stato eseguito il deployment alla versione dell'applicazione App Engine utilizzando questo URL.

La versione di pubblicazione rimane la stessa finché non la modifichi esplicitamente, nel Console Google Cloud.

Accesso alle versioni API di cui è stato eseguito il deployment in una versione dell'applicazione non pubblicabile

Se hai bisogno di accedere a versioni dell'API di cui non è stato eseguito il deployment nell'ambiente per la versione di App Engine, viene utilizzato un URL specifico della versione, simile le seguenti:

https://VERSION-dot-YOUR_PROJECT_ID.appspot.com

Sostituisci VERSION con la tua versione di App Engine, e YOUR_PROJECT_ID con il tuo progetto Google Cloud ID. Ad esempio, supponiamo che la versione di App Engine in cui viene eseguito il servizio sia 1, ma tu voglia accedere a una versione dell'API di cui è stato eseguito il deployment nella versione 2. Dovresti utilizza questo URL: https://2-dot-YOUR_PROJECT_ID.appspot.com.

Per ulteriori dettagli, consulta la documentazione di App Engine.

Accesso alle versioni dell'API di cui è stato eseguito il deployment in servizi non di pubblicazione (in precedenza moduli)

Se hai bisogno di accedere a versioni dell'API di cui non è stato eseguito il deployment nell'ambiente predefinito servizio App Engine, puoi utilizzare un URL specifico del servizio utilizzando il punto come segue:

https://SERVICE-NAME-dot-YOUR_PROJECT_ID.appspot.com/_ah/api/...

Per ulteriori dettagli, consulta la documentazione di App Engine.