Edge functions valem cada centavo: economizando com Serverless Computing

Serverless computing reduz significativamente os custos de computação, eliminando grande parte dos custos de capital e manutenção necessários para executar uma aplicação. No entanto, nem todas as soluções serverless são criadas da mesma forma. A execução de workloads serverless no edge tem vantagens de custo significativas a longo prazo, exigindo menos largura de banda e poder computacional do que as soluções dos fornecedores de cloud.

Rachel Kempf - Editor-in-Chief
Edge functions valem cada centavo: economizando com Serverless Computing

A computação serverless, ou sem servidor, fornece uma melhor relação custo-benefício para as empresas aproveitarem o edge computing power, eliminando as taxas iniciais e terceirizando o custo de operação e manutenção de servidores dos provedores de cloud. Isso é crucial para empresas que hesitam em tirar vantagem de edge computing, devido ao custo de construção e manutenção da infraestrutura distribuída.

Além disso, a computação serverless reduz despesas de capital e custos de manutenção, uma vez que a realização de workloads sem servidor em edge apresenta vantagens de custo significativas a longo prazo, em consequência da distância reduzida que os dados têm que percorrer, exigindo menos largura de banda e poder computacional do que o processamento nos data centers de provedores de cloud.

Este post irá analisar a economia da computação serverless, incluindo os fatores que afetam os custos de computação, os vários modelos de preços para infraestrutura e como o Edge Functions da Azion se compara aos custos de outros produtos de serverless compute.

Fatores que afetam os custos da computação

O custo total para construir e administrar um negócio digital está muito além das horas de desenvolvimento necessárias para criar aplicações e serviços digitais. Inclui o capital, a energia bem como as despesas operacionais necessárias para construir ou alugar e manter a infraestrutura, como por exemplo:

  • custo de capital: custos iniciais, incluindo horas de desenvolvimento, licenciamento de software, construção ou locação de hardware -computadores, servidores, equipamentos de rede- e construção ou locação de instalações onde os servidores são operados;
  • custo de energia: custos de conectividade com a internet e a energia necessária para criar e executar aplicações e armazenar dados, incluindo as redundâncias necessárias para garantir a confiabilidade;
  • custo de manutenção: despesas operacionais, como gerenciamento do ciclo de vida das aplicações, segurança, análise, monitoramento e atualizações de software, espaço físico para reparos de hardware e a manutenção ou substituição de equipamentos antigos.

No fim das contas, quanto mais tempo e dinheiro gastos em despesas de capital, maiores as barreiras à entrada e aumento do tempo para a comercialização. Os pesados investimentos e custos operacionais para o funcionamento de servidores e equipamentos de dados sobrecarregam startups, pequenas e grandes empresas que operam em indústrias competitivas ou em rápida evolução, onde a agilidade se torna uma vantagem distinta.

Além disso, quanto mais tempo e dinheiro as empresas despendem em manutenção de rotina, menos recursos conseguem dedicar a soluções inovadoras que irão gerar novas receitas.

Como os custos são calculados

Custos de data centers próprios

Embora as empresas que dependem exclusivamente de seus próprios data centers sejam cada vez mais raras, muitas empresas ainda os utilizam para workloads que exigem alta segurança ou desempenho. Esses data centers internos, ou on-prem, consistem em servidores, hardware de rede e outros equipamentos de TI que pertencem e são operados pela própria empresa - e também hospedados na respectiva companhia.

Em razão dos data centers próprios, a empresa é responsável não apenas pelos custos de aquisição, instalação, operação e manutenção dos próprios equipamentos, mas também pelo projeto, instalação e manutenção do prédio e dos subsistemas onde está instalada, além de assumir os custos mensais de energia e impostos sobre a propriedade.

Custos de colocação

Numa tentativa de reduzir despesas de capital, muitas empresas recorrem a instalações remotas, que disponibilizam a locação do espaço físico, fornecem energia elétrica e monitoram a conectividade com a internet. No entanto, os clientes possuem e operam seus próprios equipamentos, de modo que continuam com um nível de responsabilidade operacional.

Os modelos de preços de colocação podem variar de fornecedor para fornecedor, mas geralmente se dividem de acordo com os serviços oferecidos pelo local. Um blog post do data center vinculado ao site datacenter.com relaciona cinco serviços diferentes pelos quais os data centers de colocação podem cobrar:

  • espaço físico: a quantidade de espaço necessária para abrigar os racks de servidores;
  • consumo de energia: custos de eletricidade e refrigeração, incluindo para reserva de energia;
  • conectividade de dados: conexões de internet distribuídas entre os equipamentos do cliente;
  • conexão cruzada: encargos para a passagem de cabos que conectam equipamentos em racks diferentes;
  • mão de obra e suporte de TI: encargos para instalação de equipamentos, configuração e alterações de layout.

Além disso, a empresa deve adquirir e gerenciar seus próprios equipamentos. Isso não envolve apenas custos significativos do início das operações, mas também a contratação de técnicos altamente qualificados e, portanto, altamente remunerados, para realizar atualizações e outras tarefas de manutenção, assim como adquirir novos equipamentos para substituir o hardware que está desatualizado ou muito antigo.

Custos de Cloud Computing

O surgimento de cloud computing permitiu que as empresas reduzissem ainda mais as despesas de capital e possibilitou o uso de recursos com melhor custo-benefício, fornecendo recursos de computação virtual gerenciados pela internet. No entanto, assim como ocorre com o armazenamento e data centers, os custos de cloud computing dependem de múltiplos fatores, e os modelos de preços refletem essa complexidade, com cobranças diferenciadas conforme:

  • as instâncias de computação: encargos para RAM e CPU;
  • o armazenamento de dados: encargos por GB de armazenamento;
  • a rede: encargos por GB de dados baixados.

Estes custos podem ser estruturados de acordo com o uso, através de taxas de utilização por hora para CPU e RAM, e por GBs de dados armazenados e transferidos; por assinatura, com taxas para reservar um número pré-selecionado de unidades para um período de tempo específico; ou híbridos, através de taxas para reservar servidores dedicados, havendo encargos conforme a utilização aplicados após ultrapassar a capacidade reservada.

Fontes de desperdício de gastos com Cloud

Embora cloud computing ajude a aliviar algum tipo de desperdício de recursos, a complexidade da estimativa de preços de cloud pode resultar em custos ocultos ou inesperados. Em seu relatório State of the Cloud Report de 2020, a Flexera afirma que as empresas estimam que 30% dos recursos de cloud são desperdiçados e 82% das empresas apontam o gerenciamento de despesas com cloud como sendo o principal desafio. Um artigo da Deloitte de 2020 observou várias áreas de desperdício de gastos, incluindo:

  • recursos órfãos sem propósito, às vezes deixados em execução indefinidamente;
  • dificuldade para entender o cálculo de preços de cloud, levando à subutilização da capacidade reservada;
  • Provisionamento excessivo de recursos devido à replicação de políticas on-premise para cloud;
  • dívida técnica devido a processos ineficientes de engenharia e escassez de profissionais qualificados;
  • a complexidade do gerenciamento de licenças de software, muitas vezes resultando em assinaturas redundantes.

Como Serverless Computing reduz custos

Serverless computing remove muitas das fontes de gastos excessivos resultantes da infraestrutura on-prem e dos modelos tradicionais de cloud, pois permite a criação de funções orientadas a eventos com um único propósito, que são pagas conforme a necessidade de uso. Além de serem stateless e efêmeras, essas funções não exigem o uso de servidores dedicados para executar aplicações, como no caso das soluções IaaS e PaaS. Isso permite preços pré-pagos, também chamados de pay-as-you-go, com escalonamento automático mais granular, menos configuração, menos tarefas operacionais e nenhuma licença de software para gerenciar.

Como resultado, as empresas podem eliminar as despesas gerais de ambos os recursos desperdiçados e utilizar as horas de desenvolvimento para inovar e trazer produtos para o mercado. Além disso, a capacidade de criar funções orientadas a eventos de um único propósito oferece uma maneira fácil de dividir as aplicações preexistentes, reduzindo o débito técnico e permitindo um fluxo de trabalho moderno.

A computação serverless reduz custo porque:

  • não há custos iniciais para recursos de provisionamento;
  • permite uma migração suave de aplicações preexistentes;
  • menos horas de desenvolvimento são despendidas em gerenciamento;
  • utiliza eficientemente recursos com preços pré-pagos.

No entanto, nem todas as soluções de serverless compute são criadas de forma igual. Soluções padrão, como AWS Lambda e Microsoft Azure, são entregues através de cloud, exigindo mais largura de banda e poder computacional para transferir dados de/para data centers em hiperescala distantes para processamento. Além disso, essas soluções são executadas dentro de contêineres, exigindo configuração, provisionamento e uso de recursos adicionais que podem elevar os custos.

Planos de preços padrão para Serverless Computing

Embora a computação serverless seja uma opção atraente para empresas que buscam economizar nas despesas operacionais, os custos com fornecedores de cloud computing podem parecer ilusoriamente baixos à primeira vista, resultando em cobranças inesperadas. Os fornecedores de cloud normalmente cobram taxas baixas por invocation, mas de acordo com um blog post da TechBeacon, o custo de serverless compute é muito maior do que simplesmente multiplicar o número de invocations pelo custo por invocation: “a execução de funções consome recursos computacionais valiosos, e tanto a AWS quanto o Azure cobram adicionalmente pela combinação de memória alocada e o tempo decorrido da execução da função.”

Por consequência, o custo total de execução de funções serverless depende de três fatores:

  • número de invocations;
  • complexidade e duração de workloads;
  • quantidade de memória necessária para executar as funções.

Ao contrário do Edge Functions, o AWS Lambda e o Microsoft Azure exigem que os desenvolvedores aloquem memória para cada função com antecedência. Com base nessa configuração, os fornecedores irão alocar CPU, largura de banda e outros recursos proporcionalmente.

Em decorrência disso, os desenvolvedores podem se deparar com os mesmos problemas de provisionamento excessivo e desperdício de recursos - ou soluços de desempenho resultantes do provisionamento insuficiente - que enfrentariam com modelos de cloud tradicionais e on-prem.

Como o Edge Functions se compara a outros custos de Serverless Compute

A necessidade de alocar memória para cada função no AWS Lambda e no Microsoft Azure é o resultado da execução de funções em contêineres - um método de segmentação que empacota cada função com sua própria porção de CPU, memória, kernel do SO e outros recursos. O Edge Functions da Azion usa um modelo diferente, multitenancy, que permite um uso mais eficiente de recursos.

Através do Edge Functions, os recursos de computação são compartilhados entre as funções, que são mantidas isoladas em sandboxes seguras usando o Google V8 Engine. Dessa forma, as invocations usam menos recursos e custam menos para serem executadas. Além disso, não há cobrança separada pelo uso de memória e nem a necessidade de implantar ou instanciar contêineres, resultando em custos operacionais mais baixos. E, como as Edge Functions são entregues a partir de locais distribuídos de Edge Computing, diferentemente dos data centers em hiperescala, levam menos tempo para serem executadas, resultando em workloads mais curtos e, portanto, menos dispendiosos.

O Edge Functions da Azion reduz os custos de serverless compute porque:

  • não há custos separados para a memória;
  • utiliza recursos de forma mais eficiente;
  • há uma redução nos custos operacionais;
  • leva menos tempo para executar.

Adotando os Benefícios de um Modelo Serverless

O modelo serverless computing reduz significativamente os custos de computação ao eliminar grande parte dos custos de capital e manutenção necessários para executar uma aplicação. Além disso, minimiza o uso de recursos e permite planos pré-pagos para cada invocation de função individual. Ao proporcionar serverless computing, o Azion Edge Functions permite aplicações e serviços de baixa latência, recursos eficientes e com melhor custo-benefício.

Edge Functions já está disponível para todos os usuários Azion na versão beta. Experimente o Edge Functions e aproveite os benefícios da computação serverless criando uma conta gratuita da Azion hoje mesmo.

Inscreva-se na nossa Newsletter