Un'app di App Engine viene configurata utilizzando un app.yaml
file contenente CPU, memoria, risorse di rete e disco, scalabilità e altre
impostazioni generali, tra cui le variabili di ambiente.
Puoi selezionare qualsiasi nuova versione di Java 11 o versioni successive
oppure utilizza le versioni precedenti di Eclipse Jetty 9.3 o Java 8.
Per Eclipse Jetty 9.3 e Java 8, è possibile utilizzare
Maven o
Gradle.
Circa app.yaml
file
Puoi specificare la configurazione di runtime per la tua app Java, incluse le versioni e gli URL, nel file app.yaml
. Questo file funge da descrittore di deployment di una specifica versione del servizio.
Devi prima creare il file app.yaml
per il servizio default
della tua app
prima di poter creare e implementare file app.yaml
per servizi aggiuntivi.
Il seguente app.yaml
mostra come configurare la tua app per
Java 8, 11, 17 e successive. Tieni presente
che devi aggiornare il file app.yaml
per utilizzare la nuova versione. Per ulteriori informazioni sull'utilizzo delle nuove versioni, consulta la sezione relativa al runtime Java.
versione 17 e successive
runtime: java
env: flex
runtime_config:
operating_system: "ubuntu22"
runtime_version: "21"
handlers:
- url: /.*
script: this field is required, but ignored
manual_scaling:
instances: 1
versione 11
runtime: java
env: flex
runtime_config:
operating_system: "ubuntu18"
runtime_version: "11"
handlers:
- url: /.*
script: this field is required, but ignored
manual_scaling:
instances: 1
versione 8
A seconda della complessità del servizio dell'app, potrebbe essere necessario definire solo
alcuni elementi nel file app.yaml
corrispondente. L'esempio seguente
dimostra ciò che potrebbe essere richiesto da una semplice app Java nell'ambiente
flessibile:
Puoi specificare un nome univoco per i tuoi file app.yaml
, ma poi devi
specifica il nome del file con la deployment
comando
. Ad esempio, se assegni al file app.yaml
il nome service-name-app.yaml
o app.flexible.yaml
, devi eseguire il deployment dell'app utilizzando:
gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
app.yaml
nella tua app, consulta la sezione Strutturare i servizi web.
Tutti gli elementi di configurazione
Per un elenco completo di tutti gli elementi supportati in questo file di configurazione, consulta la documentazione di riferimento di app.yaml
.
Attivazione della raccolta delle metriche della Java Virtual Machine
Puoi configurare l'ambiente flessibile di App Engine per Java in modo da raccogliere metriche comuni per i processi della JVM (Java Virtual Machine). Le metriche vengono raccolte utilizzando lo stesso plug-in di monitoraggio JVM utilizzato da Cloud Monitoring. Per visualizzare l'elenco completo delle metriche per App Engine, consulta la guida alle metriche di Google Cloud.
Se vuoi raccogliere queste metriche JVM per la tua app:
appengine.googleapis.com/flex/instance/jvm/gc/count
appengine.googleapis.com/flex/instance/jvm/gc/time
devi impostare quanto segue
Sistema JMX
nelle variabili di ambiente in app.yaml
ed eseguire il deployment dell'app.
JAVA_USER_OPTS: "-Djava.rmi.server.hostname=172.17.0.1 -Dcom.sun.management.jmxremote.port=10403 -
Dcom.sun.management.jmxremote.rmi.port=10403 -Dcom.sun.management.jmxremote.local.only=false -
Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"