Visão geral do App Engine

Um aplicativo do Google App Engine é composto por um único recurso de aplicativo que consiste em um ou mais serviços. Cada serviço pode ser configurado para usar diferentes ambientes de execução e operar com diferentes configurações de desempenho. Em cada serviço, você implanta versões desse serviço. Cada versão é então executada em uma ou mais instâncias, dependendo da quantidade de tráfego configurado para ser processado.

Componentes de um aplicativo

Seu aplicativo do Google App Engine é criado no seu projeto do Google Cloud Platform quando você cria um recurso de aplicativo. O aplicativo App Engine é um contêiner de nível superior que inclui os recursos de serviço, versão e instância que compõem o aplicativo. Quando você cria seu aplicativo do Google App Engine, todos os seus recursos são criados na região escolhida, incluindo o código do seu aplicativo, com uma série de configurações, credenciais e metadados dele.

Cada aplicativo do Google App Engine inclui pelo menos um serviço, o default, que pode conter quantas versões desse serviço você quiser.

O diagrama a seguir ilustra a hierarquia de um aplicativo do App Engine em execução com vários serviços. Neste diagrama, o aplicativo tem dois serviços que contêm várias versões, e duas dessas versões estão ativamente em execução em várias instâncias:

Gráfico hierárquico dos serviços, versões e instâncias de um aplicativo

Outros serviços do GCP, como, por exemplo, o Cloud Datastore, são compartilhados em todo o aplicativo do App Engine. Para mais informações, consulte Como estruturar serviços da Web.

Serviços

Use serviços no App Engine para incluir seus aplicativos grandes em componentes lógicos que podem compartilhar com segurança recursos do App Engine e comunicar-se entre si. Geralmente, os serviços do App Engine se comportam como microsserviços. Portanto, é possível executar todo o aplicativo em um único serviço ou projetar e implantar vários serviços que serão executados como um conjunto de microsserviços.

Por exemplo, um aplicativo que lida com solicitações de clientes pode incluir serviços separados que lidam com tarefas diferentes, como:

  • solicitações de API de dispositivos móveis;
  • solicitações internas de tipo administrativo
  • processamento de back-end, como canais de faturamento e análise de dados.

Cada serviço no App Engine consiste no código-fonte do seu aplicativo e nos arquivos de configuração correspondentes do App Engine. O conjunto de arquivos implantado em um serviço representa uma única versão desse serviço, e são sendo criadas outras versões dentro desse mesmo serviço sempre que arquivos são implantados nele.

Versões

Ter várias versões do aplicativo em cada serviço permite alternar rapidamente entre diferentes versões do aplicativo para rollbacks, testes ou outros eventos temporários. É possível rotear o tráfego para uma ou mais versões específicas do aplicativo ao migrar ou dividir o tráfego.

Instâncias

As versões nos serviços são executadas em uma ou mais instâncias. Por padrão, o App Engine escalona o aplicativo para corresponder à carga. Os aplicativos aumentarão o número de instâncias em execução para oferecer desempenho consistente ou reduzirão esse número para minimizar instâncias ociosas e reduzir custos. Para mais informações sobre instâncias, consulte Como as instâncias são gerenciadas.

Solicitações de aplicativos

Cada um dos serviços do aplicativo e cada uma das versões desses serviços precisam ter nomes exclusivos. É possível usar esses nomes exclusivos para segmentar e direcionar o tráfego para recursos específicos usando URLs, por exemplo:

http://my-version.my-service.my-project-id.appspot.com
https://my-version-dot-my-service-dot-my-project-id.appspot.com

As solicitações recebidas dos usuários são roteadas para os serviços ou versões configurados para manipular o tráfego. Também é possível segmentar e rotear solicitações para serviços e versões específicos. Para mais informações, consulte Como processar solicitações.

Solicitações de geração de registro de aplicativos

Quando uma solicitação é processada no aplicativo, ele grava as próprias mensagens de geração de registros para stdout e stderr. Para detalhes sobre os registros de aplicativos, consulte Como gravar registros de aplicativos.

Limites

O número máximo de serviços e versões que você pode implantar depende do preço do seu aplicativo:

Limite App gratuito App pago
Número máximo de serviços por app 5 105
Número máximo de versões por app 15 210

Há também um limite para o número de instâncias de cada serviço com escalonamento básico ou manual:

Número máximo de instâncias por versão de escalonamento manual/básico
App gratuito App pago nos EUA App pago na UE
20 25 (200 para us-central) 25
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Ambiente padrão do App Engine para Python