Reduzindo custos de ambiente com AWS Lambda

Reduzindo custos de ambiente com AWS Lambda
Por Evair Marinho que atua no time de Managed Services

Introdução

Serverless é uma tecnologia que está muito em alta nos dias de hoje e, ainda assim, gera muitas dúvidas, principalmente com relação a custos. Esse artigo pretende explicar o conceito e o funcionamento dos custos para que você tenha todas as informações necessárias para utilizar essa tecnologia da melhor forma possível.

Conceitos

Primeiramente, o que é Serverless? Serverless, como o próprio nome já diz, significa “sem servidor”. É uma arquitetura de computação orientada a eventos e sua principal proposta é permitir que as empresas de software criem e mantenham seus aplicativos web sem se preocupar com a infraestrutura em que esses aplicativos estão rodando.

Simplesmente, você vai executar código na nuvem, fazendo as tarefas de escolher apenas: linguagem de programação, quantidade de memória e o tempo necessário para executar seu código. Assim, você foca muito mais na parte do desenvolvimento do seu negócio, perdendo a preocupação com sistema operacional, atualizações, entre outras tarefas administrativas de um servidor tradicional.

A Amazon Web Services (AWS) oferece algumas soluções Serverless, como o AWS Lambda. O AWS Lambda é o principal serviço da AWS nesse tipo de tecnologia e permite executar códigos sem servidor por meio de funções Lambda, em linguagens de programação, como Python, NodeJS, entre outras.

Custos do Lambda

Entrando na parte de custos, vale lembrar os benefícios de cloud para os negócios, onde, em um ambiente on-premises, existe uma alta despesa de capital (CAPEX). Ou seja, é necessário que a companhia adquira, mantenha e atualize ativos físicos como locação, ferramentas de monitoramento, equipamentos, hardware e servidores. Já na nuvem, o cliente possui o benefício de se preocupar apenas com duas despesas operacionais (OPEX), isto é, com o necessário para o negócio funcionar todos os dias, com funcionários, domínio web, escritório, impostos e taxas, e diversos serviços cloud que são pagos conforme o uso (Pay as a Go). Além disso, os custos são bem mais transparentes em um ambiente na nuvem, como na AWS, onde cada serviço tem o seu modelo de preço bem definido.

Voltando ao Serverless, o AWS Lambda pode te apoiar a reduzir custos no seu workload que está na sua conta AWS! Os servidores virtuais nem sempre são a melhor opção, dependendo do que você precisa, e o AWS Lambda pode te ajudar nisso, pois você paga o servidor por hora, e no serviço serverless da AWS, você pagará pela quantidade de requisições e tempo de execução do seu código. Ter um serviço que gerencia toda a infraestrutura para você é muito mais vantajoso, não acha? Assim, a preocupação é maior com o desenvolvimento das aplicações do seu negócio do que com infraestrutura de máquinas virtuais.

Vale lembrar que é necessário ver como está hoje o seu workload na nuvem AWS. Precisa executar código por até 15 minutos (tempo de execução máximo do Lambda)? O Lambda é o serviço certo para você! Escolha a linguagem, a quantidade de memória, o tempo de execução necessário, e comece no AWS Lambda hoje mesmo na nuvem AWS!

Na prática

Afinal, como você pode reduzir os custos no seu workload que já utiliza o Lambda?
Para isso, faça as seguintes ações:

Otimize seu workload com o passar do tempo
A AWS é uma empresa inovadora que anuncia novas features e serviços toda a semana! Com toda essa velocidade, o seu workload de funções Lambda pode ser beneficiado com essas novidades no portfólio de serviços AWS, como, por exemplo, uma nova integração do Lambda com um determinado serviço. Então é necessário que você, junto a sua equipe, revise periodicamente sua arquitetura para verificar se ela está otimizada da melhor maneira em relação aos custos.

Verifique a alocação de recursos para suas funções
É muito importante verificar se a função que você utiliza para o seu negócio está devidamente ajustada para suas necessidades. Como citado anteriormente, no Lambda você só paga pelo tempo que utiliza. O custo é calculado baseado na duração do tempo de execução e quantidade de memória alocada. Pensando nisso, é necessário verificar no seu workload se a memória alocada para as funções existentes é realmente necessária. Além disso, a verificação do timeout é muito importante, pois determinará o tempo máximo que a função executa, não permitindo sequências falhas de execuções por um longo período. Lembrando que esses ajustes no seu workload devem ser feitos conforme a necessidade do seu negócio.

Use “Tags”
O uso de tags na AWS é feito para a segregação e gerenciamento de custos. No Lambda, as tags podem te auxiliar a identificar as suas funções de uma maneira mais fácil. Você pode criar tags para projeto, departamento, ambiente, entre outras, na sua conta AWS. Assim, você pode identificar quais recursos estão sendo cobrados de uma forma bem mais granular.

Utilize variáveis globais em suas funções
Utilize variáveis globais na função para o seu código consumir menos memória, reduzindo consequentemente os custos e o tempo de execução.

Ajuste as configurações de Logs
O Lambda utiliza o CloudWatch Logs para registrar logs de execução de suas funções. Entretanto, o serviço CloudWatch Logs mantém, por padrão, a retenção desses logs por tempo indeterminado, podendo gerar custos. Assim, para salvar custos, configure o CloudWatch Log Group da sua função para manter os logs pelo tempo necessário!

Tem algum projeto envolvendo Serverless?

A BRLink pode te apoiar nessa jornada! A BRLink é parceira premier da AWS e foi confirmada como um dos parceiros especialistas no serviço AWS Lambda por meio de nossas competências adquiridas. Essas e outras competências da BRLink podem ser vistas no endereço: para trabalhar com o serviço AWS Lambda. Para verificar e ver outros serviços AWS validados na BRLink, entre no link do perfil APN: https://partners.amazonaws.com/partners/001E000000Rp57GIAR/

Case

Com o apoio da BRLink, a Intellibrand conseguiu ter uma redução de custos utilizando o AWS Lambda, confira o case no link abaixo:
https://www.brlink.com.br/cases/intellibrand/

Artigos Populares

Entre em
CONTATO

Para descobrir como nossos serviços auxiliam os seus negócios, entre em contato conosco.

Tem alguma dúvida?
LIGUE PRA NÓS!

Olá!

Gostaria de receber uma ligação?

NÓS TE LIGAMOS
Informe seu telefone que entraremos em contato o mais rápido possível.
Gostaria de agendar e receber uma chamada em outro horário?
Deixe sua mensagem! Entraremos em contato o mais rápido possível.