BT

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

Contribuir

Tópicos

Escolha a região

Início Notícias Google anuncia suporte a linguagem Go no Cloud Functions

Google anuncia suporte a linguagem Go no Cloud Functions

Em um post recente, o Google anunciou suporte ao Go 1.11 no Cloud Functions, seu serviço de Function as a Service (Faas). Com este anúncio, Go se junta ao conjunto de linguagens já suportadas no Cloud Functions, como o Node.js e Python.

Go é uma linguagem de programação open source mantida pelo Google, e na versão 1.11 foi adicionado o conceito de módulos. Estes módulos gerenciam as dependências de pacotes de terceiros usados em um projeto Go, semelhante ao NuGet do .NET e NPM do Node.js. O surpreendente é que, embora o Go tenha nascido no Google, o Google Cloud Functions não é o primeiro FaaS a oferecer suporte a linguagem, já que o IBM Cloud Functions e AWS Lambda anunciaram o suporte no ano passado. No entanto o suporte a linguagem foi muito bem recebido pela comunidade , já que viram uma boa implementação combinada com FaaS.

Finalmente. Go é uma excelente solução para Cloud Functions graças ao rápido tempo de inicialização para função.

Em um teste com uma função node.js e Golang com conexão a banco de dados no ano passado com lambda, o tempo de início foi de 3148 ms contra 1648 ms.

Function as a Service é um conceito popular, com todos os maiores fornecedores tendo uma implementação, seja ele Google Cloud Functions, Azure Functions ou AWS Lambda. Basicamente, funções executam um pedaço de código sempre que um evento acontece, e frequentemente implementam partes da arquitetura serverless, como descreve Matt Watson, fundador e CEO da Stackify.

FaaS é o conceito de serverless computing através da arquitetura serverless. Desenvolvedores de software podem potencializar o desenvolvimento publicando uma "função" individualmente, uma interação ou parte de lógica de negócios. Devem começar em milissegundos, processar requisições individuais e então finalizar.

Com o uso do Google Cloud Functions isso não é diferente e duas maneiras diferentes de iniciar a chamada da função são disponibilizadas. A primeira é através de funções HTTP, que são invocadas por meio de uma requisição HTTP e pode ser usado por qualquer cliente HTTP compatível. A outra maneira são funções em background, que são disparadas por um evento, por exemplo, pelo Cloud Storage ou Firebase. Por meio destes eventos, é possível implementar vários cenários, que são exemplificados nos tutoriais do Cloud Functions, incluindo aplicações que fazem desde buscas no Google Knowledgebase a partir do Slack até extração e tradução de textos a partir de imagens.

Imagem obtida em: https://cloud.google.com/functions/docs/tutorials/ocr

Há uma série de posts demonstrando como iniciar com Go no Cloud Functions, por exemplo, um post feito por Luke Freeman, o fundador da Posse Productions. Neste artigo, Freeman mostra como montar a estrutura para vários tipos de projetos, algumas maneiras de construir as funções e como testar e consumir elas. Por fim, mostra também o processo para colocar em produção dando uma visão geral completa das várias fases de desenvolvimento.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT