Hospedagem de aplicativos no Google Cloud

O Google Cloud oferece uma ampla variedade de opções para hospedagem de aplicativos. Dê uma olhada nas tabelas abaixo para encontrar a mais adequada às suas necessidades.


Casos de uso

Não sabe por onde começar? Veja alguns cenários comuns abaixo.
Serviços HTTP e apps de back-end
Frameworks da Web, microsserviços
Exemplos:
  • Flask
  • Django
  • Express.js
  • Symfony
  • Spring Boot
Ambiente padrão do App Engine
  • Escalona para atender à demanda repentina
  • Pague pelo que usar
  • Suporta endpoints de API
Google App Engine Documentos
Aplicativos orientados a eventos e de processamento de dados
Manipule dados e eventos gerados pelo usuário
Exemplos:
  • Poste um comentário no canal Slack após uma confirmação do GitHub
  • Análise estatística
  • Geração de miniaturas de imagens
Cloud Functions
  • Projetado para cargas de trabalho orientadas a eventos
  • Escalona para atender à demanda repentina
  • Configuração mínima
Google Cloud Functions Guia de início rápido
Aplicativos e serviços baseados em contêiner
Pacote padrão do setor para infraestrutura de várias nuvens
Exemplos:
  • Ambientes de execução personalizados, como Rust, Kotlin, C ++ e Bash
  • Aplicativos da web legados usando linguagens como Python 2.7, Java 7
Cloud Run (totalmente gerenciado)
  • Oferece suporte a contêineres Docker padrão do setor
  • Escalona seu app em contêiner automaticamente
  • Binários personalizados e dependências do sistema
  • Suporta endpoints de API
Cloud Run (totalmente gerenciado) Guia de início rápido
Cargas de trabalho no local e monolíticas
Computação bruta para atender aos requisitos de infraestrutura existentes
Exemplos:
  • Bancos de dados relacionais, SAP HANA
  • Sistemas de CRM
  • Sistemas ERP legados
Compute Engine
Google Compute Engine Tutoriais
Infraestrutura auto-hospedada e escalonável
Hospedagem autogerenciada, com escalonabilidade sem servidor
Exemplos:
  • Apps em contêiner que precisam de hardware e software personalizados (SO, GPUs)
  • Apps existentes sem estado em contêiner
  • Apps no Kubernetes Engine que podem se beneficiar do escalonamento para zero
Cloud Run for Anthos no Google Cloud
  • Embalagem de contêiner Docker padrão do setor
  • Altamente configurável para cargas de trabalho e configurações legadas
  • Escalona para atender à demanda
Cloud Run for Anthos no GCP Guia de início rápido
β
Softwares Beta não têm SLA e talvez não sejam adequados para cargas de trabalho de produção.

Opções de hospedagem

Muitas cargas de trabalho têm requisitos técnicos específicos. As plataformas são ordenadas por grau de abstração.
Compute Engine Kubernetes Engine (GKE) Cloud Run for Anthos no Google Cloud Cloud Run (totalmente gerenciado) Ambiente flexível do App Engine Ambiente padrão do App Engine Cloud Functions
Formato de implantação
Imagem de VM
Cluster
Contêiner
Contêiner

App

ou

Contêiner

App
Função
URLs personalizados
Escalonamento para zero
~
1
Nível gratuito
Discos permanentes
2
WebSockets
~
3
β
Executar qualquer linguagem
Tempo limite da solicitação
Nenhum
Nenhum
15 minutos
15 minutos
60 minutos
1 minuto
9 minutos
Processos em segundo plano
~
4
Acesso TPU/GPU
~
3
Conectividade VPC
1
O Cloud Run for Anthos no Google Cloud escalona as contagens de pods para zero. A contagem de nós por cluster não pode ser escalonada a zero e esses nós são faturados durante períodos sem solicitação.
2
Instâncias de contêiner no GKE não mantêm os dados após o desligamento. No entanto, os discos persistentes do Compute Engine podem ser montados em instâncias de contêiner no GKE .
3
Embora o uso de websocket e o acesso TPU/GPU sejam tecnicamente possíveis com o Cloud Run for Anthos no Google Cloud, eles não são oficialmente suportados.
4
O ambiente padrão do App Engine oferece suporte a tarefas em segundo plano para os modos de escalonamento básico e manual.
β
Softwares Beta não têm SLA e talvez não sejam adequados para cargas de trabalho de produção.

Termos importantes

Formato de implantação

Como o seu código é empacotado na implantação em uma determinada plataforma?

  • Imagens de VM: snapshots de um sistema de arquivos inteiro, incluindo o SO subjacente.
  • Contêineres: sistemas de arquivos portáteis entre várias plataformas isolados do SO subjacente.
  • Aplicativos: um serviço contido em um diretório com um ou mais casos de uso.
  • Funções: trechos de código individuais, cada um correspondente a um único caso de uso.

URLs personalizados

É possível criar caminhos de URL de várias camadas (como /abc/def) e/ou usar seu próprio nome de domínio?

Persistent Disks

O estado do disco pode ser salvo quando uma instância é encerrada ou os dados de longo prazo devem ser armazenados fora da instância?

Escalonamento a zero

Esse produto pode reduzir a zero instâncias e evitar o faturamento de períodos de zero solicitações?

WebSockets

O produto é compatível com o protocolo Websocket?

Executar qualquer linguagem

Este produto pode executar código em linguagens de programação arbitrárias?

Tempo limite da solicitação

Qual é o tempo máximo que a plataforma aguardará uma resposta do código do aplicativo?

Processos em segundo plano

Este produto pode executar operações em segundo plano em andamento fora de um período de solicitação?

Use GPUs e TPUs

O produto é compatível com a aceleração de hardware para cargas de trabalho otimizadas para GPU/TPU?

Conectividade VPC

O produto pode acessar recursos em uma nuvem privada virtual?