Serverless, um futuro sem servidores?

SEXTA - 19 DE AGOSTO - 12H

Se você tentar traduzir a palavra “serverless” para português, provavelmente a tradução será “sem servidor”, mas na verdade não é isso.  Assim como na internet sem fio tem fio em algum lugar, a arquitetura serverless tem servidores em algum lugar. 

Serverless é um modelo de execução onde o provedor de cloud (AWS, Microsoft Azure, Google Cloud Platform, etc) será responsável pela execução do seu código, no serverless não é necessário definir a arquitetura dos recursos pois os servidores que executam o software já oferecem isso por padrão, e assim o desenvolvedor fica responsável por desenvolver e testar o software. 

Essa terminologia foi introduzida pela Amazon, e quando falamos de serverless é uma forma de pensarmos que o desenvolvedor só vai fazer o que ele sabe fazer de melhor que é desenvolver, e o restante será administrado pelo provedor Cloud.

Imagine a conta de água da sua casa, você só usa a água durante um tempo, por exemplo um mês, sem se preocupar em como ela chega a sua casa (arquitetura), e no final do mês você paga pela quantidade de água que você usou. No serverless basicamente é a mesma coisa, mas ao invés de água, você paga pela quantidade recurso (memória e processamento) que o seu código requer para a execução.

Geralmente a arquitetura serverless é utilizada para processar códigos assíncronos que não tem necessidade de execução imediata e que podem causar um processamento desnecessário na aplicação principal hospedada em servidores comuns.

Exemplo: Uma casa inteligente que dispara uma função de mandar uma notificação para o dono da casa quando alguém entra no seu escritório (IoT). 

Serverless está de certa forma ligado ao Faas (Function as a service), Faas é uma categoria de serviços de computação em nuvem que fornece uma plataforma que permite aos clientes desenvolver, executar e gerenciar funcionalidades de aplicativos sem a complexidade de construir e manter a infraestrutura normalmente associada ao desenvolvimento e lançamento de um aplicativo. 

1599726672017.jpeg

Mas para ficar claro, quando falamos de serverless não estamos só falando de FaasLambda Functions, Google Cloud Functions, etc, nós estamos falando de qualquer serviço que nós, desenvolvedores não precisaremos nos preocupar com nada na parte do gerenciamento do servidor por que o provedor Cloud vai ficar a cargo de tudo.

A Amazon é um dos provedores que mais permite recursos como esses, mas existem alternativas como Google Cloud PlatformMicrosoft Azure e elas tem diversos serviços similares que conseguem fazer a mesma coisa.


Então a partir de agora, se você estiver interessado em criar uma aplicação, ter um banco de dados sem se preocupar mais com o gerenciamento, eu fortemente recomendo dar uma aprofundada em serverless.

Veja outros posts
@Jeffer Marcelino