Três crenças comuns sobre serverless que você pode ignorar

Ecossistema F5 | 03 de janeiro de 2019

Serverless é a nova queridinha do mundo da nuvem. Pelo menos uma em cada três organizações (33%) implantou aplicações serverless no último ano. (Fonte: Pesquisa de Desenvolvedores do Digital Ocean do 2º trimestre de 2018) Entre os participantes de uma pesquisa da CNCF de 2018, 38% afirmaram usar serverless atualmente. Outros 26% planejam adotar a tecnologia nos próximos doze meses.

Essa opção de nuvem ainda incipiente não só está crescendo rapidamente, como também costuma ser mal compreendida e receber poderes quase sobrenaturais, como reduzir custos, acelerar a geração de valor e até preparar seu café da manhã na cama.

E, como se isso não bastasse para confundir você, ainda há a confusão entre Função como Serviço (FaaS) e Serverless. Os dois conceitos não são a mesma coisa, o que gera outros mal-entendidos sobre como uma empresa típica pode aproveitar essa nova e incrível tecnologia.

Então, hoje vamos desmistificar três mitos comuns que ouvi repetidamente de clientes e participantes de conferências nos últimos seis meses. Afinal, entender o que essa tecnologia é — e o que não é — é essencial antes de decidir se vale a pena dedicar seu tempo a explorá-la.

Vamos começar esclarecendo a diferença entre serverless e FaaS.

Mito: Serverless === FaaS

Serverless é um sistema. Uma plataforma. Um framework. A melhor forma de descrevê-lo é como um ambiente de execução elástico e just-in-time. O Serverless busca eliminar a sobrecarga e os atritos operacionais executando algo sob demanda em algum tipo de ambiente isolado. Esse ambiente isolado geralmente é um contêiner, mas também existem soluções que usam máquinas virtuais e WebAssembly. Para simplificar, usarei "contêiner" como um termo abrangente para os três.

Serverless é orientado a eventos. Isso significa que o provisionamento e o processamento são iniciados por algum tipo de gatilho, como a chegada de uma solicitação de API ou o relógio marcar 14h07. Pode ser um evento gerado automaticamente ou um evento interativo, como clicar em um botão de um formulário em uma aplicação web. Em um modelo serverless, o evento inicia a execução de algo que existe em um "contêiner".

OBSERVAÇÃO para NETOPS: F5 iRule leitores familiarizados podem relacionar eventos de Serverless a eventos de iRule, como "HTTP_REQUEST" e "HTTP_RESPONSE". O modelo é praticamente o mesmo: quando ocorre um EVENTO, um código é executado. Infelizmente, a maioria dos frameworks Serverless não oferece suporte a TCL, mas geralmente oferece suporte a node.js e Python.

O "contêiner" geralmente é carregado de um repositório no momento em que é solicitado (inicialização a frio) ou pode já estar aguardando (inicialização a quente). Tudo o que estiver nesse "contêiner" é executado e retorna uma resposta ao sistema que acionou sua execução.

O modelo de negócios por trás da computação sem servidor geralmente se baseia em pagar apenas pelos recursos consumidos enquanto o "contêiner" está em execução. O modelo operacional consiste em eliminar da equação tudo o que envolve a operação do ambiente e deixar que as pessoas se preocupem em criar "algo".

Isso é Serverless. Função como Serviço é um uso específico de serverless que define "algo" como "uma função".

O FaaS nos permite levar a decomposição de aplicações, iniciada com os microsserviços, à sua conclusão definitiva: as funções.

Saber que existe uma diferença entre Serverless e Função como Serviço é importante para desmistificar nosso próximo mito.

Mito: é necessário refatorar

Devido à confusão entre FaaS e Serverless, muitas pessoas no mercado têm a impressão equivocada de que, para aproveitar as vantagens do Serverless, será necessário refatorar sua aplicação, dividindo-a nas funções que a compõem.

Serverless não exige que você refatore sua aplicação nem desenvolva novos aplicativos no nível de funções. Serverless pode executar com a mesma facilidade um "contêiner" com qualquer tipo de aplicação, processo, daemon ou função. Desde que esteja empacotado em um "contêiner" e possa ser invocado, ele poderá ser executado em um contexto Serverless.

Também já vi implementações bem-sucedidas que aproveitam o Serverless para ampliar (modernizar) arquiteturas de aplicações existentes. O processamento em lote e fora do fluxo principal de cadastros, atendimento de pedidos e outros processos que não fazem parte do caminho crítico pode ser implementado em um modelo Serverless sem que seja necessário refatorar completamente as aplicações tradicionais. Aplicações que já utilizam integrações externas baseadas em APIs para essas finalidades terão mais facilidade para adotar o Serverless. Aplicações consolidadas baseadas no modelo cliente-servidor quase certamente precisarão de algumas modificações para aproveitar o Serverless, mas isso não representa o mesmo esforço considerável que uma refatoração completa exigiria.

Processos executados apenas ocasionalmente — com base em eventos específicos que ocorrem de forma esporádica ou imprevisível — também podem ser adequados para Serverless. É muito mais econômico iniciar um "contêiner" periodicamente para executar algo do que manter esse "contêiner" em execução o tempo todo. Isso vale tanto para Serverless público quanto on-premises.

O que nos leva ao terceiro dos nossos mitos, que se concentra na localização.

Mito: serverless não funciona em ambientes locais

Já ouvi profissionais de TI dos mais diversos lugares, bem como especialistas, fazerem essa afirmação. Ela é tão claramente falsa quanto a ideia de que não seria possível executar a "nuvem" em uma infraestrutura local. Isso certamente é possível e, de acordo com o Developer Economics State of the Developer Nation, uma parcela significativa das organizações faz isso.

Aplicações maiores e mais utilizadas também podem se beneficiar de um escalonamento muito eficiente, pagando por recursos adicionais apenas para as partes específicas da aplicação que estejam sob alta carga, além de poder identificá-las e otimizá-las com mais facilidade. Essa vantagem para aplicações maiores provavelmente é um dos principais motivos pelos quais vemos 17% dos atuais adeptos da computação sem servidor executando uma solução em seu próprio data center.

Os ganhos de eficiência de custos em uma implementação serverless on-premises vão além da escalabilidade. A possibilidade de reutilizar os mesmos recursos e compartilhá-los entre aplicações de uso esporádico é bastante relevante. O serverless também permite agregar recursos de valor adicional às aplicações e funções operacionais aproveitando sua natureza essencialmente orientada a eventos. Seu uso on-premises não deve ser descartado sem antes compreender que os benefícios do serverless vão muito além de eliminar os atritos operacionais do dia a dia dos desenvolvedores. Isso certamente é uma vantagem, mas não é o único benefício — e muito menos o único motivo pelo qual as organizações estão experimentando o serverless on-premises.

Portanto, a realidade é que o Serverless pode ser — e já está sendo — implementado on-premises. A pesquisa da CNCF mencionada anteriormente analisa em detalhes as plataformas Serverless "instaláveis" mais populares:

Há mais opções, e certamente surgirão outras à medida que essa tecnologia ganhar força.

Tanto a computação sem servidor (Serverless) quanto a Função como Serviço (FaaS) vêm apresentando taxas de adoção impressionantes, à medida que as organizações experimentam, testam e avaliam essas tecnologias para uso tanto em novas aplicações nativas da nuvem quanto em iniciativas de modernização. Reconhecer e deixar de lado equívocos comuns é um primeiro passo importante para decidir se essas tecnologias são adequadas às aplicações da sua organização.

Compartilhar

Sobre o autor

Lori Mac Vittie
Lori Mac VittieEngenheiro Emérito e Evangelista-Chefe | F5

Lori MacVittie é engenheira distinta e evangelista-chefe no Escritório do CTO da F5, com ampla experiência em entrega de aplicações, estratégia de automação e infraestrutura. Ela é conhecida por transformar complexidade em clareza, seja definindo diretrizes para agentes de IA, analisando arquiteturas multinuvem frágeis ou investigando os limites de sistemas escaláveis. Ela acumula mais de trinta anos de experiência no setor, abrangendo desenvolvimento de aplicações, arquitetura de TI e operações de redes e sistemas. Antes de ingressar na F5, atuou como editora de tecnologia e recebeu diversos prêmios. MacVittie tem mestrado em Ciência da Computação e é uma autora prolífica, com publicações que abrangem segurança, nuvem e arquitetura empresarial. Ela também é uma entusiasta de jogos de tabuleiro e videogames, além de ter opiniões assumidamente fortes sobre queijos.

Mais publicações de Lori Mac Vittie

Publicações relacionadas no blog

O estado da maturidade digital empresarial: a transformação digital ainda não terminou
Ecossistema F5 | 31/07/2024

O estado da maturidade digital empresarial: a transformação digital ainda não terminou

Explore como a IA impacta as empresas, as aplicações da IA generativa, as estratégias para modernizar as operações de TI e os benefícios da maturidade digital com a F5.

Como a IA generativa acelera a transformação digital
Ecossistema F5 | 26/03/2024

Como a IA generativa acelera a transformação digital

Veja como a IA generativa impulsiona a transformação digital nas empresas, acelerando tendências como a integração de APIs, os desafios dos modelos operacionais de TI híbrida e a adoção de AIOps.

Seis capacidades técnicas para acelerar a transformação digital
Ecossistema F5 | 05/01/2023

Seis capacidades técnicas para acelerar a transformação digital

As arquiteturas empresariais atuais carecem dos fatores necessários de agilidade, escalabilidade, segurança e observabilidade, essenciais para impulsionar a mudança tecnológica. No entanto, estas seis capacidades fundamentais ajudarão as empresas a gerenciar riscos e desafios ao longo de sua transformação digital.

Inverter a API é a transformação digital de que as empresas precisam para participar e competir em uma economia de APIs
Ecossistema F5 | 18/10/2022

Inverter a API é a transformação digital de que as empresas precisam para participar e competir em uma economia de APIs

As organizações detêm um valor latente — na forma de APIs internas — que precisam explorar para competir em uma economia de APIs. Embora os desafios técnicos e de segurança possam desestimular algumas delas, as empresas precisam reconhecer que inverter suas APIs permitirá liberar o valor da organização como plataforma.

A modernização da TI começa pela infraestrutura
Ecossistema F5 | 08/09/2022

A modernização da TI começa pela infraestrutura

O hardware e o software evoluíram rapidamente desde os primórdios da internet, mas, para aproveitar ao máximo os benefícios resultantes dessa evolução, as organizações precisam avaliar e modernizar sua infraestrutura e a entrega de aplicativos. Acelere os esforços de modernização com a nova F5 rSeries.