Configurar a sua app com o ficheiro app.yaml

Uma app do App Engine é configurada através de um ficheiro app.yaml que contém recursos de CPU, memória, rede e disco, escalabilidade e outras definições gerais, incluindo variáveis de ambiente.

Acerca de app.yaml ficheiros

Pode especificar a configuração de tempo de execução da sua app Java, incluindo versões e URLs, no ficheiro app.yaml. Este ficheiro funciona como um descritor de implementação de uma versão específica do serviço.

Primeiro, tem de criar o ficheiro app.yaml para o serviço default da sua app antes de poder criar e implementar ficheiros app.yaml para serviços adicionais.

O exemplo app.yaml seguinte demonstra como configurar a sua app para a versão mais recente do Java. Para mais informações sobre a utilização de runtimes Java suportados, consulte o artigo Runtime Java.

  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 

Consoante a complexidade do serviço da sua app, pode apenas ter de definir alguns elementos no ficheiro app.yaml correspondente. O exemplo seguinte demonstra o que uma app Java simples pode exigir no ambiente flexível:

Pode especificar um nome exclusivo para os seus ficheiros app.yaml, mas, em seguida, tem de especificar o nome do ficheiro com o comando de implementação também. Por exemplo, se der o nome app.yaml ao ficheiro service-name-app.yaml ou app.flexible.yaml, tem de implementar a sua app através de:

gcloud app deploy service-name-app.yaml gcloud app deploy app.flexible.yaml 
Para saber como estruturar vários serviços e ficheiros app.yaml na sua app, consulte o artigo Estruturar serviços Web.

Todos os elementos de configuração

Para ver uma lista completa de todos os elementos suportados neste ficheiro de configuração, consulte a referência app.yaml.

Ativar a recolha de métricas da máquina virtual Java

Pode configurar o ambiente flexível do App Engine para Java de modo a recolher métricas comuns para processos da máquina virtual Java (JVM). As métricas são recolhidas através do mesmo plug-in de monitorização da JVM que o Cloud Monitoring usa. Para ver a lista completa de métricas do App Engine, consulte o guia de métricas do Google Cloud.

Se quiser recolher estas métricas da JVM para a sua app:

  • appengine.googleapis.com/flex/instance/jvm/gc/count
  • appengine.googleapis.com/flex/instance/jvm/gc/time

Tem de definir as seguintes propriedades do sistema JMX nas variáveis de ambiente no app.yaml e implementar a sua 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"