Olá, meu nome é Leonardo Sartorello, e dou as boas-vindas a mais um curso da Alura.
Audiodescrição: Leonardo se identifica como um homem branco. Possui barba e cabelos castanhos e olhos azuis. Ao fundo, há uma parede com dois quadros pendurados, iluminada em tons de vermelho e azul.
Este curso é ideal para quem está começando no Google Cloud Platform e deseja compreender o funcionamento do Cloud Run, um dos principais serviços serverless da Google.
Utilizaremos exemplos práticos para contextualizar os gatilhos e a integração com diversos serviços.
Aproveite ao máximo os recursos da plataforma, incluindo:
Se prepare para começar essa jornada conosco!
Vamos imaginar que estamos trabalhando em uma empresa e recebemos a tarefa de subir uma nova aplicação na cloud (nuvem). Utilizaremos o Google Cloud e aprenderemos a otimizar esse processo com o Cloud Run, uma solução serverless.
O Cloud Run é uma ferramenta que permite executar funções ou pequenos trechos de código automaticamente, sem a necessidade de gerenciar máquinas virtuais, realizar auto-scaling ou implementar balanceadores de carga. Ele reduz a complexidade operacional, permitindo que o foco esteja no desenvolvimento de soluções.
Acessaremos o Cloud Run pelo site do Google Cloud. Após realizar o login, devemos ter um projeto criado.
Caso você não tenha criado um projeto, deve criá-lo. Para isso, acesse a página "Gerenciar Recursos" e clique em "CRIAR PROJETO". Na janela "Novo projeto" que vai ser exibida, insira o nome do projeto e clique em "CRIAR".
Com o projeto criado, basta acessar a barra de pesquisa na parte superior da tela de boas-vindas para buscar por "Cloud Run":
Cloud Run
Na lista de resultados, clicaremos na opção "Cloud Run".
Haverá o direcionamento para a tela do Cloud Run. Abaixo da barra de pesquisa, a interface inicial exibe uma barra horizontal de menus e botões, e logo abaixo, duas guias: "SERVIÇOS" e "JOBS".
Na barra de menus, clicaremos na opção "Escrever uma função", representada por um ícone de reticências envoltas em parênteses ((…)
). Na tela exibida, devemos acessar o campo "Nome" e nomear o serviço como "primeira função", sem acentos e trocando o espaço por um hífen:
primeira-funcao
Abaixo desse campo, haverá um aviso para ativar a API do Cloud Run, caso ainda não esteja habilitada. Para isso, basta clicar em "ATIVAR", à direita dessa mensagem.
Acessando o campo "Região", escolheremos a região padrão, US Central 1 (Iowa), pois é uma opção acessível e eficiente para testes. Entretanto, em ambientes reais, é mais adequado selecionar uma região próxima às pessoas usuárias.
No próximo campo, "URL do endpoint", será exibido o endereço para acesso à função, possibilitando sua cópia.
No campo "Tempo de execução", definiremos a linguagem da função. A definição dessa linguagem é crucial. O Cloud Run oferece suporte a várias linguagens, como Python, Node, Java e Ruby. Para este teste, utilizamos Python 3.12.
Recomendamos evitar linguagens marcadas com um triângulo amarelo, que indicam descontinuação.
No campo "Autenticação", marcaremos a opção "Requer autenticação", para torná-la privada enquanto a construímos. Posteriormente, aprenderemos a torná-la pública.
No campo "Alocação de CPU e preços", manteremos a opção padrão: "A CPU é alocada somente durante o processamento da solicitação". Essa é uma prática recomendada para evitar custos contínuos.
Já na seção "Escalonamento de serviços", manteremos o valor zero no campo "Número mínimo de instâncias", mantendo a configuração de instâncias mínimas como zero. Isso também contribui para reduzir despesas, já que as funções serão ativadas somente quando houver requisições.
Na seção "Controle de entrada", manteremos a opção "Todos" selecionada para permitir acesso de qualquer parte da internet, desde que seja autenticado.
Após ajustar as configurações, criaremos o serviço clicando no botão "CRIAR", no canto inferior esquerdo. Se uma janela for exibida informando que algumas APIs ainda não estão ativas, basta clicar em "ATIVAR".
Haverá o direcionamento para a tela do dashboard, da primeira-funcao
. A área de código, na parte inferior direita, exibirá a função de exemplo hello_http()
, a qual podemos modificar à vontade.
A função padrão, helloHttp
verifica se o JSON ou os argumentos da requisição incluem o campo name
.
name
não está presente, retorna "Hello World!".name
está presente, retorna "Hello" seguido pelo valor correspondente.Para começar a testar a função, clicaremos no botão "SALVAR E REIMPLANTAR", acima da área de código. Com isso, a parte superior esquerda da tela exibirá a seção "Criando serviço", com o progresso da atualização. Em seu interior, temos os indicadores "Criando a origem", "Criando revisão" e "Roteando o tráfego". Quando um sinal de check verde surgir à direita das etapas, o serviço estará pronto para uso.
Com a função criada e pronta, entenderemos quando utilizar funções do Cloud Run e quais os custos envolvidos.
Anteriormente, subimos nossa primeira função utilizando o Cloud Run, aproveitando a simplicidade do conceito de serverless. Essa abordagem facilita a preparação do ambiente, eliminando a necessidade de configurar toda a infraestrutura manualmente.
Apesar do nome, a abordagem serverless não descarta a necessidade de servidores envolvidos. As funções ainda precisam de servidores ou máquinas para serem executadas. A diferença é que a responsabilidade pela infraestrutura é transferida para o provedor, no caso, o Google. Contudo, essa facilidade gera um custo.
Acessando o site do Google, pesquisaremos por "gcp cloud run".
gcp cloud run
Entre os resultados, clicaremos no link "Preços" ou "Pricing". Essa tela explica que o Cloud Run funciona com um modelo de pagamento por uso, também conhecido como on-demand. Isso significa que pagamos apenas pelo tempo em que nossas funções estão ativas e pelas solicitações processadas. Além disso, a Google oferece um generoso limite gratuito.
Para serviços como o que escolhemos, com CPU alocada somente durante a solicitação, o Cloud Run oferece os seguintes serviços gratuitos:
Esses limites gratuitos permitem que muitas aplicações de pequeno e médio porte operem sem custos.
Com 2 milhões de solicitações gratuitas por mês, é possível processar:
Esse número é suficiente para a maioria das aplicações básicas ou em fase de testes.
Caso o volume de solicitações ultrapasse o limite gratuito, o custo adicional é de 40 centavos por milhão de requisições. Por exemplo:
O Cloud Run é uma solução econômica para aplicações que não exigem um grande volume de solicitações. Os custos com CPU e memória podem ser otimizados, mas geralmente o número de solicitações será o principal fator determinante.
Compreendemos o funcionamento do serverless e os custos associados ao Cloud Run, incluindo o limite gratuito. A seguir, começaremos os testes práticos com a função que já subimos.
O curso Google Cloud: implemente funções serverless no Cloud Run possui 72 minutos de vídeos, em um total de 40 atividades. Gostou? Conheça nossos outros cursos de Google Cloud Platform em DevOps, ou leia nossos artigos de DevOps.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.