O blog da AWS
Escalando para o sucesso: A transformação digital da Asap Log com a AWS
Por Paulo Dantas, arquiteto de soluções na AWS.
De 15 para 1000 tarefas simultâneas | 85% de melhora no tempo de resposta | 68% diminuição de custos
A ASAP Log surgiu como uma empresa de logística trabalhando com entrega de pacotes no modelo crowdshipping (mode Uber). Em 2020 se juntou ao Grupo Casas Bahia e rapidamente expandiu suas operações aproveitando toda capilaridade logística que o grupo já dispunha e os 24 centros de distribuição em todas as regiões do Brasil. O crescimento foi rápido e exigiu adaptação dos times de engenharia para atender as diferentes modalidades de entrega que iam desde pacotes pequenos até móveis e eletrodomésticos. A ASAP Log continua a atender todo o mercado com clientes de diversos segmentos, como indústrias, comércio, varejo e e-commerce, oferecendo soluções logísticas que visam reduzir custos, aumentar a cobertura, diminuir prazos de entrega e garantir a segurança das cargas transportadas.
Oportunidade
Um dos principais diferenciais de mercado da ASAP Log é o roteirizador. Módulo do sistema que permite a divisão das cargas entre os veículos, respeitando capacidade e tempo de jornada dos mesmos. O roteirizador garante economia e eficiência nas operação de entrega e empenha um papel fundamental no processo logístico de todo o sistema. Devido ao rápido crescimento, este módulo começou enfrentar desafios como:
- Escalabilidade: com sua arquitetura existente, a capacidade era limitada de lidar com tarefas simultâneas, o que restringia sua capacidade de crescer e atender às necessidades de demandas cada vez maiores. O roteirizador conseguia processar no máximo 15 tarefas simultâneas, o que poderia resultar em filas e gargalos durante períodos de alta demanda;
- Tempo de resposta: filas e gargalos resultavam em tempos de resposta mais lentos que afetava negativamente a experiência do usuário. Em alguns casos causava atrasos na operação, fazendo as equipes de roteirização trabalharem horas extra para cumprir todas as etapas;
- Custo elevado: na tentativa de melhorar o tempo de resposta, era investido muito em recursos como CPU e memória e nem sempre o retorno era proporcional ao investimento;
- Disponibilidade: devido a complexidade de sua implementação, o roteirizador enfrentava travamentos esporádicos que prejudicavam o desempenho ainda mais. Uma instância travada diminuía nossa capacidade de tarefas simultâneas o que fazia o tempo de resposta ser ainda maior;
Solução – Roteirizador Serverless
As soluções vieram com uma revolução na arquitetura e no sistema. Na arquitetura, para o roteirizador, foi abandonado o modelo provisionado de microsserviços e adotado o modelo serverless sob demanda. Para viabilizar o funcionamento deste modelo, foram utilizado os seguintes serviços da AWS:
- Amazon ECS: serviço orquestrador de container que facilita deploys, gerenciamento e escala de aplicações conteinerizadas.
- Amazon ECR: registro de container similar ao Docker HUB onde usuários podem subir e baixar imagens. Utiliza permissões AWS IAM o que garante privacidade e segurança das imagens do registro.
- AWS Fargate: tecnologia que pode ser utilizada com ECS para rodar containers sem a necessidade de gerenciar servidores ou clusters de instâncias EC2. Elimina a necessidade de provisionar, configurar ou escalar clusters de máquinas virtuais para rodar containers.
- Amazon S3: o serviço de armazenamento de objetos com recursos de escalabilidade, segurança e performance.
No sistema, a equipe de engenharia fez uma atualização para Java 21 e refatorou algumas áreas da aplicação, já que ela não iria mais atuar como um serviço. Para extrair ainda mais desempenho foi adotada a JDK Amazon Correto e o processador ARM64 Graviton II. Ambos exclusivos da AWS Fargate e otimizados para uso em container.
Resultados
- Escalabilidade: Um dos principais destaques foi o impressionante aumento na capacidade de lidar com tarefas simultâneas. Com a integração de serviços como o Elastic Container Service (ECS) da AWS, a capacidade foi ampliada para impressionantes 1.000 tarefas simultâneas – um aumento notável de 6.566%. Esta escalabilidade permitiu atender às crescentes demandas da logística garantindo que o aplicativo pudesse lidar perfeitamente com picos de carga e atividade repentinos, sem comprometer o desempenho.
- Tempo de Resposta: A organização testemunhou uma melhoria notável de 85% no tempo de resposta do aplicativo. Essa melhoria eliminou de vez os atrasos que faziam as equipes estenderem o horário de trabalho. Ao otimizar o fluxo de dados e aproveitar o poder dos serviços da AWS, o desempenho dos aplicativos foi otimizado, garantindo que os usuários recebessem o nível de capacidade de resposta esperado e merecido.
- Economia: Além da escalabilidade, Ademais, ao fazer a transição para um modelo de serviço gerenciado e eliminar a necessidade de ampla infraestrutura local, a organização alcançou uma redução notável de 68% em suas despesas operacionais gerais.
- Disponibilidade: com as atualizações e refatoração do roteirizador, sua complexidade diminuiu e sua eficiência em uso de recursos aumentou. Com isso conseguimos zerar as falhas por travamento, acabando com os problemas de disponibilidade.
“A migração do nosso sistema de roteirização para o AWS ECS com AWS Fargate proporcionou uma escalabilidade sem precedentes, permitindo-nos atender à demanda crescente das Casas Bahia com eficiência e agilidade.”
Felipe Bocolowski – Principal Engineer, Grupo Casas Bahia
Conclusão
O roteirizador da ASAP Log é um sistema fundamental para o negócio da empresa, é considerado um diferencial estratégico. Ele continha falhas que causava transtornos para os clientes e para as equipes de engenharia. A tentativa de solucionar esses problemas, foi o gatilho para uma sequência de evoluções e inovações que trouxeram ótimos resultados aos olhos dos clientes e de toda a engenharia. Foi um case de como transformar um problema em oportunidade de evolução tecnológica. Hoje, aplicamos o modelo serverless com ECS em inúmeras outras soluções de software que desenvolvemos. Expandimos a utilização de processadores Amazon Graviton II em todas as demais aplicações, aumentando ainda mais a eficiência e economia em nossos sistemas.
Biografia do autor
Paulo Dantas é arquiteto de soluções na AWS, com experiência em desenvolvimento de aplicações, gerenciamento de projetos, bancos de dados NoSQL e neurociência computacional. Ele trabalha apoiando clientes SMB em suas trajetórias de expansão na AWS. |
Biografia do revisor
Nas palavras de Felipe Bocolowski: Como CTO e cofundador da ASAP Log, tenho idealizado, codificado e gerenciado um ecossistema de software inteiro para entregas de pacotes e algoritmos de roteirização. Em 2020, a ASAP Log foi adquirida pelo Grupo Casas Bahia (também conhecido como Via), um dos maiores varejistas do Brasil, para se tornar sua plataforma de logística. LinkedIn. |