O que é função como serviço (FaaS)?

A FaaS é um serviço de back-end sem servidor que permite aos desenvolvedores escrever peças modulares de código em tempo real que podem ser executadas em resposta a determinados eventos.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Definir PaaS
  • Explorar as vantagens e desvantagens da PaaS
  • Descrever por que uma grande rede de borda é essencial para a performance de aplicativos FaaS

Copiar o link do artigo

O que é função como serviço?

A função como serviço (FaaS) é uma maneira de executar partes modulares de código na borda sem servidor. A FaaS permite que os desenvolvedores escrevam e atualizem um pedaço de código em tempo real, que pode ser executado em resposta a um evento, como um usuário clicando em um elemento em um aplicativo web. Isso facilita o dimensionamento do código e é uma maneira econômica de implementar microsserviços.

O que são microsserviços?

Se um aplicativo web fosse uma obra de arte visual, usar a arquitetura de microsserviços seria como fazer a arte a partir de uma coleção de mosaicos. O artista pode facilmente adicionar, substituir e reparar um ladrilho de cada vez. A arquitetura monolítica seria como pintar toda a obra em uma única tela.

Microsserviços X Arquitetura Monolítica

Essa abordagem de construir um aplicativo a partir de um conjunto de componentes modulares é conhecida como arquitetura de microsserviços. Dividir um aplicativo em microsserviços é atraente para os desenvolvedores porque significa que eles podem criar e modificar pequenos pedaços de código que podem ser facilmente implementados em suas bases de código. Isso contrasta com a arquitetura monolítica, na qual todo o código está entrelaçado em um grande sistema. Com grandes sistemas monolíticos, mesmo pequenas alterações no aplicativo exigem um processo de implantação robusto. A FaaS elimina essa complexidade de implantação.

Usando o código sem servidor como FaaS, os desenvolvedores da web podem se concentrar em escrever o código do aplicativo, enquanto o provedor sem servidor cuida da alocação do servidor e dos serviços de back-end.

Quais são as vantagens de usar FaaS?

Melhoria da velocidade do desenvolvedor

Com a FaaS, os desenvolvedores podem gastar mais tempo escrevendo a lógica do aplicativo e menos tempo se preocupando com servidores e implantações. Isso normalmente significa uma reviravolta de desenvolvimento muito mais rápida.

Escalabilidade embutida

Como o código FaaS é inerentemente escalável, os desenvolvedores não precisam se preocupar em criar contingências para alto tráfego ou uso pesado. O provedor sem servidor lidará com todas as preocupações de dimensionamento.

Eficiência de custo

Ao contrário dos provedores tradicionais de nuvem, os provedores de FaaS sem servidor não cobram de seus clientes pelo tempo de computação ocioso. Por causa disso, os clientes pagam apenas pelo tempo de computação que usarem e não precisam desperdiçar dinheiro provisionando recursos em nuvem em excesso.

Quais são os inconvenientes da FaaS?

Menos controle do sistema

Ter um terceiro para gerenciar parte da infraestrutura dificulta a compreensão de todo o sistema e adiciona desafios de depuração.

Mais complexidade necessária para os testes

Pode ser muito difícil incorporar o código FaaS em um ambiente de teste local, tornando o teste completo de um aplicativo uma tarefa mais intensiva.

Como começar a usar FaaS

Os desenvolvedores devem criar um relacionamento com um provedor sem servidor para habilitar a funcionalidade FaaS para um aplicativo web. Como a integração FaaS significa que algum código de aplicativo será entregue a partir da borda, a disponibilidade e distribuição geográfica de servidores de borda é uma consideração importante. Um usuário na Itália acessando um site que depende de código de borda FaaS fornecido a partir de um data center sobrecarregado no Brasil encontrará o tipo de atraso que leva a altas taxas de rejeição. O Cloudflare Workers é uma solução FaaS que aproveita a Rede global da Cloudflare com data centers em mais de 330 cidades, o que o torna uma escolha popular.