Modern Development: orquestração e escala (Parte II) - arquitetura Cloud Native e a construção para a resiliência
Na Parte I deste artigo, detalhamos o desafio crítico de negócio: a vulnerabilidade na transação promocional que resultava na duplicação indevida de bonificações. Para resolver esse problema de alto impacto financeiro, a Consultoria Sensedia concebeu uma estratégia baseada em um microsserviço orquestrador dedicado e dinâmico.
A complexidade era alta, exigindo a coordenação precisa e resiliente de múltiplos sistemas legados e modernos. Esta segunda parte se aprofunda em como essa solução foi construída, detalhando a arquitetura de software, a metodologia Cloud Native e a engenharia de automação que garantiram a consistência e a escalabilidade do sistema.
Escolhendo a arquitetura: elegância e flexibilidade
Para garantir que o serviço de orquestração fosse agnóstico à tecnologia de entrada e permitisse a evolução independente da lógica de negócio, a Consultoria Sensedia adotou a Arquitetura Hexagonal (Ports and Adapters).
Este padrão arquitetural foi escolhido para isolar a Lógica de Domínio/Orquestração das decisões técnicas de infraestrutura. Ao aplicar o Hexagonal, isolamos todas as decisões mais técnicas (como acesso a banco de dados e comunicação externa) nas camadas de adaptadores, enquanto a lógica de aplicação e orquestração permaneceu protegida na camada central (Application).
Tratando a orquestração: o poder da dinâmica e da composição
A complexidade da orquestração dinâmica foi tratada pela combinação dos padrões Chain of Responsibility (Cadeia de Responsabilidade) e Dispatcher (Orquestrador Mestre).
- Chain of Responsibility: permitindo segmentar a implementação de cada etapa do fluxo de negócio em um componente isolado e coeso (a Handle). Cada Handle se responsabiliza por uma única parte do fluxo, aderindo estritamente ao seu contexto de negócio. Toda comunicação com sistemas externos é feita estritamente através das Portas de Saída, respeitando o modelo do Ports and Adapters.
- Dispatcher Dinâmico: implementado para prover a capacidade dinâmica de reconfigurar o fluxo sem deploy. O fluxo é definido externamente em um arquivo de configuração (YAML). O Dispacher atua como um orquestrador inteligente, utilizando a Inversão de Controle para carregar e executar as Handles na ordem definida.
Arquitetura da orquestração em detalhe
A arquitetura do microsserviço foi desenhada com um rigoroso controle de fluxo e estado, garantindo desacoplamento e resiliência:
- Contrato e autonomia das Handles (Chain of Responsibility): o núcleo reside nas Handles, que seguem uma Interface de Contrato. O Objeto de Entrada é repassado por todo o fluxo e é enriquecido em todas as etapas, mantendo seu estado. Cada handle é independente e foca em sua lógica de negócio, garantindo que possa ser utilizada em qualquer ordem.
- O Objeto de Estado: controle de fluxo e erros: o método execute retorna sempre um Objeto de Estado, que é fundamental para a tomada de decisões do orquestrador, pois ele propaga erros, o estado atual do objeto e as mensagens de validação de negócio.
- O Dispatcher: orquestrador mestre e resiliência: o Dispacher é o componente que orquestra, utilizando o arquivo de configuração de fluxos para determinar a sequência. Ele executa as handles na ordem proposta. O design garante Tolerância a Falhas, pois as handles não emitem exceções que interrompem o fluxo (todo erro é tratado e retornado no Estado) e o Dispacher aborta o fluxo de forma controlada ao identificar um erro no Objeto de Estado.

Construindo para o futuro: Cloud Native e escala
Cientes de que a nova solução habilitaria novos canais e provocaria um crescimento na volumetria, a Consultoria Sensedia adotou as melhores práticas: Cloud Native e os princípios do 12 Factor App, garantindo que a solução fosse intrinsicamente escalável, elástica e resiliente.
- A aplicação é um microsserviço conteinerizado e Stateless (sem estado), permitindo escalabilidade horizontal.
- A infraestrutura é versionada como código (IaC), garantindo o espelhamento perfeito entre os ambientes de desenvolvimento, homologação e produção.
- Priorizamos as implantações gerenciadas pelo Cloud Provider, permitindo que o foco do time seja o valor de negócio, e não a manutenção de infraestrutura.
O guia da excelência: aplicação dos 12 Factor App
Aderimos rigorosamente aos 12 Fatores, garantindo o alinhamento com a moderna engenharia de software:
I. Base de código: o projeto utiliza repositórios GIT e gerenciador de dependências padrão da linguagem. Não foram construídas bibliotecas proprietárias, e todas as dependências são rastreáveis.
II. Dependências: todas as bibliotecas utilizadas no projeto são rastreáveis pelo mirror do repositório, garantindo controle e isolamento.
III. Configurações: nenhuma configuração é definida no nível de repositório ou projeto. As configurações do ambiente são passadas unicamente por variáveis de ambiente, garantindo que o ambiente determine suas próprias settings.
IV. Serviços de apoio: graças à Arquitetura Hexagonal, todos os acessos a serviços de apoio (ex: base de dados) utilizam abstrações na camada central, permitindo que sejam trocados a qualquer momento.
V. Build, Release, Run: os deploys são 100% automatizados, com realização de testes unitários e análise estática de qualidade de código, garantindo um processo de entrega contínua e confiável.
VI. Processos: o serviço é tratado como um processo sem estado, podendo ser escalado conforme a necessidade do negócio.
VII. Portas: a aplicação é exposta por uma porta no contêiner, que por sua vez é exposta no load balancer do provider, seguindo o padrão de acesso por portas.
VIII. Concorrência: os processos permitem a concorrência por não armazenarem estado e não partilharem arquivos em disco, funcionando de forma independente.
IX. Encerramento: os serviços podem ser descartados e recriados rapidamente (rápida inicialização). Como não armazenam estado local, a perda de dados é evitada.
X. Paridade Dev/Prod: todos os ambientes são espelhados, garantindo que não haja diferença de comportamento entre eles por questões de ambiente ou sistema operacional de servidor.
XI. Logs: todas as etapas geram logs identificados, que são enviados ao agregador de logs da cloud e podem ser rastreados de forma integrada por um identificador de transação.
XII. Processos administrativos: no contexto deste serviço, não há processos administrativos, pois toda a alteração na base de dados (utilizando NoSQL) acontece de forma automática.
DevOps: uma cultura de excelência e colaboração
A Consultoria Sensedia implementa a prática de DevOps desde o início do projeto, promovendo uma cultura de união onde a responsabilidade pelo sucesso do produto é compartilhada. Essa abordagem estabelece modelos de implantação que atuam como aceleradores para todos os futuros projetos do cliente.
Automação de infraestrutura com Terraform: modelos replicáveis
Para migrar o provisionamento manual do cliente para um processo automatizado, utilizamos o Terraform para a construção e gerenciamento de todos os ambientes. O Engenheiro DevOps, com base no desenho do Arquiteto, realiza a construção focando em boas práticas de reaproveitamento, criando uma arquitetura de base replicável. Os elementos são provisionados automaticamente e, após validação, os demais ambientes são espelhados, alinhando-se com o 12 Factor App.
Independência e transferência de conhecimento
A Consultoria Sensedia fornece ao cliente todos os artefatos do Terraform. Essa transferência de propriedade possibilita que os times internos do cliente mantenham e evoluam a infraestrutura de forma funcional e independente da consultoria, garantindo a sustentabilidade da solução a longo prazo.
Documentação e observabilidade: garantindo o legado
A criação de documentações completas antes da implementação é uma premissa inegociável da Consultoria Sensedia, um compromisso estratégico para a independência do cliente.
Foram criados três artefatos principais:
- Documento de definição de arquitetura: estabelece o padrão de construção, incluindo a Arquitetura Hexagonal, o modelo de testes (padrão AAA e critérios F.I.R.S.T), métricas de qualidade de código (SonarQube) e a estrutura de versionamento com GitFlow.
- Documento de infraestrutura: detalha quais componentes de cloud serão provisionados e como serão expostos, sendo a base para o Engenheiro DevOps implementar via Terraform.
- Documento de definição do microsserviço: aborda os elementos mais técnicos, como a implementação dos padrões Chain of Responsibility e Dispatcher, regras de negócio das Handles e padrão de emissão de logs.
Observabilidade: visibilidade de ponta a ponta na transação
A observabilidade foi priorizada, garantindo a rastreabilidade completa em um fluxo complexo. Utilizamos o Transaction ID gerado na plataforma Sensedia, que é propagado em todas as chamadas do fluxo de negócio. Este identificador permite realizar a observabilidade na Sensedia e nos logs detalhados do microsserviço, estabelecendo um fluxo de visibilidade de ponta a ponta para cada transação.
Conclusão: consistência de negócio e o legado da inovação
Este projeto de orquestração transcendeu a correção funcional, resultando em um sistema robusto, escalável e de fácil manutenção. A combinação da visão estratégica (Parte 1 deste artigo) com a excelência em Modern Development destacada aqui atestou a capacidade da Consultoria Sensedia de entregar soluções que garantem a consistência de negócio.
Ao utilizar o melhor da Arquitetura Hexagonal, o dinamismo do Dispatcher, a resiliência do Cloud Native/12 Factor App e a maturidade do DevOps, a Sensedia transformou um ponto de falha em uma base sólida para o crescimento do cliente. O legado deixado — que inclui arquitetura modular, IaC documentado e total observabilidade — reafirma o compromisso da Sensedia em ser a parceira ideal para a modernização e a entrega de valor de negócio duradouro.
Saiba mais sobre a atuação da Consultoria Sensedia assistindo ao webinar abaixo!
Referências
- Design Patterns Elements of Reusable Object-Oriented (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides)
- Hexagonal Architecture Explained (Alistair Cockburn (Autor), Juan Manuel Garrido de Paz)
Conteúdos relacionados
Confira os conteúdos produzidos pela nossa equipe
Sua história de sucesso começa aqui
Conte com nosso apoio para levar as melhores integrações para o seu negócio, com soluções e equipes profissionais que são referência no mercado.


