Sobre o cliente
Com 1 milhão de CPFs registrados, com expectativa de crescimento para pelo menos 60 milhões, a empresa do setor financeiro atua com o objetivo de diminuir a inadimplência, reduzir custos e manter uma boa relação com os clientes. Para tanto, oferece uma solução de gerenciamento de recebíveis, automatizando processos e fluxos de mensagem, sendo a Via Varejo um dos seus principais clientes.
Desafio
Após a migração para a solução DaaS, a empresa enfrentou desafios em sua infraestrutura legada, que revelou-se inadequada e onerosa devido às altas despesas com licenças de servidores SQL e o custo de infraestrutura necessário para executar a solução. Posteriormente, a empresa reconheceu a urgência de ajustar sua arquitetura para otimizar a satisfação dos clientes, incluindo a implementação de processamento de mensagens em lotes e a criação de ambientes segregados para clientes específicos.
A Solução
A companhia optou por migrar sua infraestrutura da Azure para a AWS com apoio da e-Core, visando uma migração seguindo o modelo de Replatform, porém com ajustes planejados para otimizar o desempenho e a eficiência operacional durante as 2 primeiras fases do projeto. Esses ajustes incluem:
- Processamento de disparos de mensagens em lote, em vez de individualmente, para melhorar a eficiência e reduzir o tempo de processamento.
- Criação de ambientes com IaC (Infrastructure as Code) separados para clientes específicos, garantindo maior segurança e flexibilidade na gestão dos dados.
- Atualização do pipeline para implantação da infraestrutura e construção de um novo pipeline para deploy.
O processamento feito em lote foi modernizado para uma função AWS Lambda, antes estava alocado em uma máquina virtual na Azure. Como o AWS Lambda é um serviço de computação serverless, somente quando uma mensagem chegar na fila esse recurso será executado. Isso reduziu o tempo de ociosidade que ocorria no modelo anterior, que era de aproximadamente 12 horas por dia. Como o tempo ocioso gera desperdício de recursos, o pagamento por utilização gerou também uma economia de custo.
Anteriormente, a criação de recursos era pensada para ser feita de forma manual, podendo trazer inconsistência entre os ambientes e risco de falha humana. Após a migração para AWS, foi criado um template em IaC utilizando Terraform para onboarding de novos clientes que precisassem de uma ambiente de processamento dedicado. Com os templates de ambiente desenvolvido, foi possível garantir que todos os clientes possam ter a mesma configuração de infraestrutura já desenhada para atender a demanda e diminuição do tempo de provisionamento do novo ambiente.
Devido a restrição de tempo do projeto foi decidido manter o Azure DevOps como pipeline de implantação das aplicações durante a primeira e segunda fase do projeto, mudando a configuração do pipeline para que fosse o invocador dos serviços AWS que a solução utiliza. O Elasticbeanstalk é o serviço principal usado nas aplicações e, como ele já oferece a possibilidade de rollback e versionamento das aplicações e outras funcionalidades relacionadas a CI/CD, o Azure DevOps ficou responsável somente pelo armazenamento do código, acionamento do Beanstalk e execução dos templates em Terraform desenvolvido, com o objetivo de nas próximas fases do projeto migrar o Azure DevOps para uma solução de terceiros ou para o CodeCommit com CodePipeline
Resultados
Com o uso de templates IaC desenvolvido em Terraform, o provisionamento de ambiente para novos clientes que poderia levar até 2 dias em média caiu para menos de 4 horas e todo o deploy das aplicações podem ser controlado de forma centralizada com o uso do ElasticBeanstalk como serviço de orquestração de computação.
A migração da infraestrutura da Azure para AWS com o apoio da e-Core resultou em uma operação mais eficiente e econômica. A transformação arquitetural dos processos de disparos (E-mail, SMS, Whatsapp e URA) e geração dos boletos diminuiu o tempo de execução de mais de 5 horas para pouco menos de 10 minutos, gerando um retorno de investimento aprimorado das campanhas para os clientes e criando uma estrutura escalável. Além disso, a modernização desses dois processos resultou numa diminuição de custos totais de cloud chegando na casa de mais de 10%.