Um aplicativo do App Engine é configurado usando um arquivo app.yaml
,
que contém recursos de CPU, memória, rede e disco, escalonamento e outras
configurações gerais, incluindo variáveis de ambiente.
É possível selecionar qualquer nova versão do Java 11 ou posterior
ou usar as versões mais antigas do Eclipse Jetty 9.3 ou Java 8.
Para o Eclipse Jetty 9.3 e Java 8, é possível usar o Maven ou o Gradle.
Sobre arquivos app.yaml
É possível especificar a configuração de ambiente de execução do aplicativo
Java, incluindo versões e URLs, no arquivo app.yaml
. Esse arquivo atua como um descritor de implantação de uma
versão de serviço
específica.
Primeiro, é necessário criar o arquivo app.yaml
para o serviço default
do
app antes de criar e implementar arquivos app.yaml
para outros serviços.
O app.yaml
a seguir demonstra como configurar seu app para
versões 8, 11, 17 e mais recentes do Java. Você
precisa atualizar o arquivo app.yaml
para usar a nova versão. Consulte Ambiente de execução do Java para mais informações sobre como usar as novas versões.
versão 17 e mais recentes
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
Versão 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
versão 8
Dependendo da complexidade do serviço do aplicativo, talvez seja necessário definir
apenas alguns elementos no arquivo app.yaml
correspondente. No exemplo a seguir, veja o que um simples aplicativo Java pode exigir no ambiente flexível:
É possível especificar um nome único para os arquivos app.yaml
, mas será necessário
especificar o nome do arquivo com o comando
de implantação
também. Por exemplo, ao nomear seu arquivo app.yaml
, service-name-app.yaml
ou app.flexible.yaml
, será preciso implantar o aplicativo usando:
gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
Para saber mais sobre como estruturar vários serviços e arquivos app.yaml
no app, consulte
Como estruturar serviços da Web.
Todos os elementos de configuração
Para uma lista completa de todos os elementos compatíveis com esse arquivo de configuração, consulte a referência do app.yaml
.
Como ativar a coleta de métricas da máquina virtual Java
É possível configurar o ambiente flexível do App Engine para Java para coletar métricas comuns para processos da máquina virtual Java (JVM). As métricas são coletadas usando o mesmo plug-in de monitoramento 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 você quiser coletar essas métricas de JVM para o aplicativo, siga estas instruções:
appengine.googleapis.com/flex/instance/jvm/gc/count
appengine.googleapis.com/flex/instance/jvm/gc/time
Você precisará definir as seguintes propriedades do sistema JMX nas variáveis de ambiente no app.yaml
e implantar o aplicativo.
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"