Una app de App Engine se configura mediante un archivo app.yaml
que contiene los recursos de CPU, memoria, red y disco, el escalamiento y otros parámetros de configuración generales, incluidas las variables de entorno.
Puedes seleccionar cualquier versión nueva de Java 11+ o usar las versiones anteriores de Eclipse Jetty 9.3, o Java 8.
Para Eclipse Jetty 9.3 y Java 8, puedes usar Maven o Gradle.
Acerca de los archivos app.yaml
Puedes especificar la configuración del entorno de ejecución para tu app de Java, incluidas las versiones y las URL, en el archivo app.yaml
. Este actúa como un descriptor de implementación de una versión específica del servicio.
Primero, debes crear el archivo app.yaml
para el servicio default
de tu app antes de que puedas crear e implementar los archivos app.yaml
de servicios adicionales.
En el siguiente app.yaml
, se muestra cómo configurar tu app para las versiones 8, 11 y 17 y posteriores de Java. Ten en cuenta que debes actualizar tu archivo app.yaml
para usar la versión nueva. Consulta el entorno de ejecución de Java para obtener más información sobre el uso de las nuevos versiones.
versión 17 y posteriores
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
versión 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
versión 8
Según la complejidad del servicio de tu app, es posible que solo necesites definir algunos elementos en el archivo app.yaml
correspondiente. En el siguiente ejemplo se demuestra lo que una aplicación Java simple puede requerir en el entorno flexible:
Puedes especificar un nombre único para tus archivos app.yaml
, pero también debes especificar el nombre del archivo con el comando de implementación. Por ejemplo, si al archivo app.yaml
lo nombras service-name-app.yaml
o app.flexible.yaml
, debes implementar la aplicación mediante una de las siguientes opciones:
gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
app.yaml
en tu aplicación, consulta Estructura servicios web.
Todos los elementos de configuración
Para obtener una lista completa de todos los elementos compatibles con este archivo de configuración, consulta la referencia de app.yaml
.
Habilita la recopilación de métricas de máquinas virtuales de Java
Puedes configurar el entorno flexible de App Engine para que Java recopile métricas comunes de los procesos de la máquina virtual de Java (JVM). Las métricas se recopilan con el mismo complemento de supervisión de JVM que usa Cloud Monitoring. Para ver la lista completa de métricas de App Engine, consulta la guía de métricas de Google Cloud.
Si deseas recopilar estas métricas de las JVM para tu app:
appengine.googleapis.com/flex/instance/jvm/gc/count
appengine.googleapis.com/flex/instance/jvm/gc/time
Deberás configurar las siguientes propiedades del sistema JMX en las variables de entorno del archivo app.yaml
e implementar tu 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"