A maior parte da funcionalidade fornecida pelos serviços incluídos legados agora é fornecida pelas Bibliotecas de cliente do Cloud. Para mais informações, consulte as alternativas recomendadas listadas abaixo.
Se a migração para uma solução desagrupada não for uma opção para seu projeto, então talvez seja possível continuar usando serviços agrupados legados nos seus Java 11/17 apps como substitutos. Essa abordagem oferece flexibilidade para migrar para serviços desagrupados posteriormente no ciclo de migração.
Depois de migrar dos serviços incluídos legados, você pode continuar usando o App Engine ou migrar para o Cloud Run. O Cloud Run foi projetado para melhorar a experiência do App Engine e incorpora muitos dos melhores recursos do ambiente padrão e do ambiente flexível. Para comparar recursos e entender a migração, consulte o guia de comparação entre o App Engine e o Cloud Run.
Caminhos de migração para serviços incluídos no App Engine
Blobstore
Para armazenar e recuperar dados, use o Cloud Storage por meio das bibliotecas de cliente do Cloud. Para começar, consulte Como usar o Cloud Storage.
Datastore
É possível usar o Firestore no modo Datastore como uma alternativa à API Datastore. O Firestore é a versão mais recente do Datastore, e recomendamos o uso das Bibliotecas de cliente do Cloud para Datastore.
Imagens
Para migrar o serviço de imagens do App Engine, implante um serviço de transformação de imagens em contêiner no Cloud Run e encaminhe as chamadas de serviço de imagens do App Engine para ele. Para hospedar e veicular imagens, armazene-as em um bucket do Cloud Storage ou distribua-as usando o Cloud CDN. Para mais informações, consulte Migrar o serviço de imagens.Logging
Recomendamos que você atualize o aplicativo para usar o Cloud Logging, que é compatível com
recursos como ver registros no explorador, fazer o download de registros, filtrar
mensagens por nível de gravidade e correlacionar mensagens de apps com solicitações específicas. Como alternativa, se preferir a simplicidade em vez da precisão dos dados, você pode gravar registros estruturados em stdout ou stderr.
Para mais informações, consulte
Como gravar e visualizar registros.
Memcache
Para armazenar os dados do aplicativo em cache, use o Memorystore para Redis.
Módulos
Para mais informações e para saber como modificar os serviços em execução do aplicativo, use uma combinação de variáveis de ambiente e a API App Engine Admin:
| Informações de serviços | Como acessar |
|---|---|
| ID do aplicativo atual | Por meio da variável de ambiente GAE_APPLICATION. |
| ID do projeto atual | Por meio da variável de ambiente GOOGLE_CLOUD_PROJECT. |
| Nome do serviço atual | Por meio da variável de ambiente GAE_SERVICE. |
| Versão do serviço atual | Por meio da variável de ambiente GAE_VERSION. |
| ID da instância atual | Por meio da variável de ambiente GAE_INSTANCE. |
| Nome do host padrão | Método apps.get da API Admin |
| Lista de serviços | Método apps.services.list da API Admin |
| Lista de versões de um serviço | Método apps.services.versions.list da API Admin |
| Versão padrão de um serviço, incluindo qualquer divisão de tráfego | Método apps.services.get da API Admin |
| Lista de instâncias em execução de uma versão | Método apps.services.versions.instances.list da API Admin |
Para mais informações sobre os dados disponíveis sobre os serviços em execução do seu aplicativo, consulte o ambiente de execução do Java 11/17 .
Namespaces
A API Namespaces permite que os aplicativos multilocatários particionem dados por locatários simplesmente especificando uma string de namespace exclusiva para cada locatário.
Embora o Datastore ofereça suporte à multilocação diretamente, outros Google Cloud serviços não. Se o aplicativo multilocatário usa outros Google Cloud serviços, você precisa processar a multilocação manualmente. Para ter instâncias de serviços completamente isoladas, crie projetos novos de maneira programática usando a API Cloud Resource Manager e acesse os recursos em todos os projetos.
OAuth
Em vez de usar o serviço OAuth do App Engine para verificar os tokens do OAuth 2.0,
use o método
oauth2.tokeninfo
da
API OAuth 2.0.
Pesquisar
Hospede qualquer banco de dados de pesquisa de texto completo, como o ElasticSearch no Compute Engine, e acesse-o a partir do serviço.
Fila de tarefas
Enfileirar tarefas para executar códigos assíncronos usando a API REST do Cloud Tasks, a API RPC ou as bibliotecas de cliente do Cloud, e use um serviço padrão do Java 11/17 App Engine como um destino push. Para mais informações, consulte Migrar do Task Queues para o Cloud Tasks.
Para o Java 11/17, consulte o programa de exemplo a seguir que interage com a API Cloud Tasks.Quando for necessário usar filas pull, como no enfileiramento de tarefas ou mensagens a serem extraídas e processadas por workers separados, o Pub/Sub é uma boa alternativa. Ele oferece uma funcionalidade semelhante e garantias de entrega.
Autenticação do usuário
Como alternativa, use um dos mecanismos de autenticação baseados em HTTP descritos na página Autenticação de usuários.