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 terminais de API
Google App Engine Documentos
Apps de processamento de dados e orientados por eventos
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
Serviços e apps 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 contentorizado automaticamente
  • Binários personalizados e dependências do sistema
  • Suporta terminais 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
Grupo
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 pod para zero. A contagem de nós por cluster não pode ser escalonada para 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 permanentes do Compute Engine podem ser ativados 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 compatíveis.
4
O ambiente padrão do App Engine suporta 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 de plataforma cruzada isolados do SO subjacente.
  • Apps: um serviço contido em um diretório com um ou mais casos de uso.
  • Funções: snippets 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? (em inglês)

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 para zero

Este produto pode escalonar para zero instâncias e evitar o faturamento em períodos sem solicitações?

WebSockets

Este produto é compatível com o protocolo Websocket? (em inglês)

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á por 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

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

Conectividade VPC

Este produto pode acessar recursos em uma nuvem privada virtual?