BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Executando Containers Serverless com Google Cloud Run

Executando Containers Serverless com Google Cloud Run

Favoritos

O Google Cloud Run foi disponibilizado na versão beta e permite executar aplicações stateless dentro de containers Dockers que são automaticamente ativados quando recebem uma requisição HTTP. O Google Cloud Run é uma plataforma totalmente gerenciada baseada no Knative, que permite que as aplicações possam ser facilmente portadas para outras plataformas usando o Kubernetes.

Usando Google Cloud Run, os desenvolvedores podem empacotar suas aplicações dentro de um container Docker, adicionar a imagem ao Google Container Registry, e, por fim, configurar o endpoint a partir do qual a aplicação será inicializada depois de ser publicada com o gcloud. O Google Cloud Run irá automaticamente cuidar da execução do container quando requisições ocorrerem, e também parar o container ("escalar para zero") quando não existirem mais requisições para atender. Isso poderá reduzir os custos de várias aplicações, considerando que clientes irão pagar somente pelo tempo que os containers executarem. O Google Cloud Run também irá, automaticamente, escalar aumentando ou diminuindo o número de containers em execução, com base no tráfego.

O maior requisito para uma aplicação estar apta para executar no Google Cloud Run é não possuir estado (stateless), já que o container irá iniciar e parar automaticamente. Existe também um número de outros requisitos que o Google preliminarmente lista, como: ser compilado para Linux para 64 bits, ouvir as requisições na porta 8080 e a aplicação executar em menos de 4 (quatro) minutos.

O Google Cloud Run pode soar similar à soluções FaaS (Funções como Serviço), como AWS Lambda, Google Cloud Functions ou Azure Functions, já que não há exigência de um servidor para estarem constantemente executando e manuseando requisições. Na realidade, no entanto, o Google Cloud Run não é uma solução FaaS. Soluções FaaS tendem a se encaixar para aplicações que executam pequenas funcionalidades e delegam um número crítico de funções, como autenticação, acesso ao banco de dados ou até gerenciamento de infraestrutura. Em nível mais prático, uma das principais diferenças do do Google Cloud Run comparado com as soluções FaaS é a liberdade que os desenvolvedores têm para escolher qualquer combinação de linguagem de programação e tecnologias com base em Linux para construírem as aplicações. Adicionalmente, usando containers Docker, fica mais fácil testar localmente uma aplicação, já que a maioria das aplicações irá executar localmente da mesma forma que será executada na nuvem.

Os competidores diretos do Google Cloud Run são Azure Container Instances e AWS Fargate, que também permitem executar containers sem gerenciamento da infraestrutura e possuem um conjunto similar de características. Em comparação a eles, as principais diferenças do Google Cloud Run são o gerenciamento automatizado de containers e o fato de que, como é baseado no Knative, qualquer aplicação desenvolvida para Google Cloud Run pode ser portada para outra plataforma baseada em Kubernetes, incluindo o Google Kubernetes Engine, ou mesmo um cluster Kubernetes auto gerenciável.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT