O Serverless está ganhando popularidade entre os desenvolvedores devido à simplicidade e economia de custos que oferece.
Os desenvolvedores que usam FaaS têm acesso a uma plataforma que permite executar o código para seus aplicativos, dando a eles a capacidade de se concentrar apenas na codificação e no desenvolvimento de seus aplicativos, sem precisar se preocupar com a manutenção de um servidor. Como o código é executado apenas em resposta a eventos ou solicitações, os desenvolvedores economizam custos sendo cobrados apenas pelo que usam.
A computação sem servidor também oferece aos desenvolvedores a oportunidade de dimensionar horizontalmente automaticamente sem planejamento de capacidade ou manutenção contínua e permite um tempo de comercialização mais rápido devido à facilidade de desenvolvimento e teste de funções.
Principais casos de uso para serverless
O FaaS brilha quando usado para funções simples e repetitivas sem cargas de trabalho consistentes ou grandes volumes de solicitações. O FaaS pode ser usado de várias maneiras, desde aplicativos da Web e conversas com APIs e chatbots online até a personalização da interface do usuário de um site com testes A/B e geolocalização e muito mais. Alguns dos casos de uso mais populares para FaaS são APIs para aplicativos móveis e da Web, processamento de multimídia, processamento de dados e Internet das Coisas (IoT).
APIs para aplicações web e móveis
O FaaS é uma ótima opção para aplicativos orientados a eventos, como RESTful. Muitas vezes, os desenvolvedores desejam incorporar componentes sem servidor em seus aplicativos existentes. Por exemplo, usando uma oferta de FaaS, um desenvolvedor Jamstack que deseja adicionar uma nova API ao seu site ou aplicativo pode escrever funções simples que são acionadas por determinados eventos.
Os sites com os quais interagimos todos os dias provavelmente usam funções para gerenciar processos orientados a eventos. Sites que carregam conteúdo dinâmico frequentemente usam funções para chamar uma API e, em seguida, preencher as informações apropriadas. Muitas vezes, os sites que exigem entrada do usuário, como um endereço para envio, usam funções para fazer uma chamada de API para realizar a verificação de back-end necessária para validar se as informações – neste exemplo, o endereço – inseridas pelo cliente estão corretas.
Embora os contêineres também possam executar essas tarefas, as funções brilham quando há grandes quantidades de tráfego flutuante. As APIs sem servidor são fáceis de criar e manter e podem ser dimensionadas facilmente para atender à demanda. Como eles só são executados quando são acionados, eles podem ser extremamente econômicos para usar em um componente que não precisa de estado.
Durante as temporadas de pico ou quando o tráfego do site é alto e as cargas de trabalho aumentam drasticamente, as funções são facilmente dimensionadas automaticamente, proporcionando uma melhor experiência ao cliente, economizando tempo e dores de cabeça para os desenvolvedores.
Multimídia e processamento de dados
O FaaS é frequentemente usado para armazenar ou processar entradas do usuário, como processamento de multimídia ou outros tipos de dados. Um exemplo é usar o FaaS para executar determinados processos com base no tipo de mídia que um usuário carrega. A criação de uma função que aciona a resposta apropriada a um upload de mídia economiza tempo dos desenvolvedores e, em última análise, dinheiro.
A natureza direta do FaaS também permite a fácil entrada e processamento de grandes quantidades de dados, o que significa que pipelines de dados robustos podem ser construídos com pouca ou nenhuma manutenção de infraestrutura.
Os desenvolvedores que criam uma ferramenta de CRM ou CMS podem usar funções para armazenar as informações em um banco de dados ou conectar-se a uma API para armazenar os dados em um banco de dados externo.
Como os desenvolvedores precisam escrever apenas uma única função, eles podem economizar tempo significativo usando FaaS para diferentes componentes de processamento. O uso de FaaS para processamento de dados também pode economizar custos significativos, pois os desenvolvedores só são cobrados quando os eventos são acionados.
Internet das Coisas
A Internet das Coisas refere-se a dispositivos agora comuns em nossas casas que se conectam à internet para realizar funções. Esses dispositivos estão usando cada vez mais o FaaS para executar suas tarefas, apenas enviando e recebendo dados quando acionados por um evento.
Isso economiza dinheiro para as empresas, pois elas não precisam pagar pelo poder de computação que não estão usando. Como o FaaS permite dimensionamento fácil e automático, os desenvolvedores não precisam se preocupar com padrões de uso imprevisíveis à medida que os consumidores acessam dispositivos domésticos inteligentes.