Serverless Applications – O próximo passo da computação em nuvem

Como o próprio nome sugere, o modelo de arquitetura Serverless permite que os desenvolvedores compilem e executem aplicações sem se preocupar com os servidores. Isso não quer dizer que os servidores deixam de existir, mas sim que eles são gerenciados e operacionalizados por terceiros.

A computação Serverless é uma evolução dentro da computação em nuvem, permitindo que os desenvolvedores foquem cada vez na parte essencial de seu produto.

Aplicações Serverless são aquelas que utilizam soluções de Backend as a Service (BaaS); ou que incluem códigos customizados executados em containers efêmeros numa plataforma de Functions as a Service (FaaS).

Dessa forma, o provedor gerencia de forma dinâmica a alocação de recursos das máquinas, garantindo escalabilidade e confiabilidade aos desenvolvedores

Atualmente, os principais provedores de infraestrutura na nuvem (Amazon, Google e Microsoft) estão investindo muito no conceito do Serverless, sendo um tema cada vez mais relevante no mundo de arquitetura de software.

Soluções Serverless – FaaS e BaaS

Em um primeiro momento, o termo serverless foi atribuído para descrever aplicações que dependem, em partes ou totalmente, de serviços em nuvem para gerenciar a lógica e o estado do servidor.

Geralmente, esses aplicativos possuem a característica básica de serem páginas únicas – utilizando um banco de dados em nuvem (como o Parse e Firebase); e serviços de autenticação (como Auth0 e AWS Cognito).

Essas soluções são chamadas de “Backend as a Service” ou ‘BaaS’.

Em alguns casos, certa quantidade da lógica do servidor pode ser escrita pelo desenvolvedor do aplicação.

Esse modelo também é considerado como serverless, mas diferente das arquiteturas tradicionais, o código é executade em containers efêmeros gerenciados por terceiros em plataformas de FaaS – “Functions as a Service”.

Vantagens

Além de ter um bom fit  com micro serviços e metodologias ágeis de desenvolvimento, as aplicações Serverless também reduzem o time to market do produto, escalam automaticamente e reduzem custos com infraestrutura.

Time to Market

O tempo de entrega de um produto pode ser muito longo, considerando as etapas de planejamento, design e desenvolvimento de software.

Utilizando solução de FaaS e/ou Baas, o time de desenvolvimento e operações pode economizar um bom tempo com os servidores, permitindo que alterações entrem em ambiente de produção mais rapidamente.

Redução de custos

Com a alocação dinâmica, é possível escalar os recursos em momentos de pico demanda, e reduzir na baixa. Desta forma, você paga apenas aquilo que é consumido, reduzindo os custos com o provedor de infraestrutura em nuvem.

Escalabilidade

As soluções de BaaS e FaaS fazem com que aplicações serverless sejam auto escaláveis, controlando sua capacidade de acordo com unidades de consumo.

projetos ágeis

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Newsletter

Insights de tecnologia para você!

Não compartilharemos seu e-mail com terceiros e também prometemos não enviar spams. Ao informar seu e-mail, você concorda com nossa Política de Privacidade.

Conteúdos relacionados

Veja nesse artigo como incluir a Inteligência Artificial no seu planejamento estratégico de TI para que ele seja adap...
Veja nesse artigo como reskilling e upskilling são fundamentais na área de TI para nos adaptarmos a era da Inteligênc...
Veja nesse artigo quando usar microsserviços, como se preparar para obter os benefícios dessa arquitetura no seu sist...