Muitas integrações ainda funcionam por polling: a cada cinco minutos, um sistema pergunta ao outro se algo mudou. A técnica é simples, mas produz atraso, chamadas vazias e picos de processamento. Quando vários consumidores consultam o mesmo ERP, o custo e a fragilidade aumentam.
Em uma arquitetura orientada a eventos, o sistema que registra a mudança publica um fato — pedido aprovado, estoque reservado, cliente atualizado. Os interessados recebem o evento e executam sua parte de forma independente. A captura de dados alterados, ou CDC, acrescenta esse comportamento a bancos e sistemas que não foram construídos para publicar eventos.
Polling, webhook, evento ou CDC?
Polling
O consumidor consulta periodicamente uma API ou tabela. É adequado quando o volume é baixo, alguns minutos de atraso são aceitáveis e a origem não oferece alternativa. Intervalos agressivos, porém, desperdiçam recursos; intervalos longos deixam dados desatualizados.
Webhook
A origem chama uma URL do destino quando algo acontece. Funciona bem em integrações ponto a ponto, como pagamento aprovado. O receptor precisa validar assinatura, responder rápido e processar de forma assíncrona, porque o provedor pode repetir a entrega.
Evento
O produtor publica em um broker ou barramento sem conhecer todos os consumidores. Um novo serviço pode assinar o mesmo fato sem alterar o emissor. Isso reduz acoplamento e facilita automações, análises e notificações paralelas.
Change Data Capture
O CDC lê o log de transações do banco e transforma inserções, atualizações e exclusões em fluxo de mudanças. É útil para integrar sistemas legados, alimentar busca e analytics ou sincronizar dados sem sobrecarregar a base com consultas completas.
Os blocos de uma arquitetura orientada a eventos
Produtores registram fatos do negócio. O broker recebe, retém e distribui mensagens. Consumidores executam ações. Um catálogo ou registro de esquemas documenta a forma de cada evento. Telemetria conecta toda a jornada por um identificador de correlação.
O evento deve expressar algo que já ocorreu, não uma instrução ambígua. Pedido confirmado é mais reutilizável que envie o pedido para o estoque. Inclua identificador único, tipo, versão, data, origem e referência ao objeto. Evite copiar dados pessoais sem necessidade.
Exemplo prático: venda aprovada até a entrega
O e-commerce confirma o pagamento e grava a venda. Pela estratégia de outbox, a mesma transação registra um evento a ser publicado. O estoque reserva itens; o CRM atualiza o estágio; a logística cria a expedição; a automação envia a confirmação por WhatsApp. Cada consumidor tem sua própria fila e pode evoluir sem interromper os demais.
Se o CRM ficar indisponível, mensagens permanecem na fila e são tentadas novamente. A reserva de estoque não precisa esperar. Quando o CRM volta, processa o atraso. Se uma mensagem sempre falha, ela vai para uma fila de exceção, com contexto suficiente para correção e reprocessamento.
Confiabilidade: entregue mais de uma vez sem duplicar o negócio
Muitos brokers trabalham com entrega pelo menos uma vez. Portanto, o consumidor deve ser idempotente: receber o mesmo evento duas vezes produz o mesmo resultado de uma vez. Uma chave de idempotência, restrição única ou registro de mensagens processadas evita cobrança duplicada, mensagem repetida ou baixa dupla no estoque.
Retries precisam de atraso progressivo e limite. Falhas transitórias podem ser repetidas; dados inválidos devem ser encaminhados para análise. Uma fila de mensagens mortas não é lixeira: precisa de alerta, proprietário e procedimento de reprocessamento.
Ordenação e concorrência
Nem todo o fluxo exige ordem global. Normalmente basta manter a sequência por entidade, como o mesmo pedido ou cliente. Particionar pela chave correta preserva essa ordem sem sacrificar escala. Consumidores devem rejeitar versões antigas ou aplicar controle otimista quando eventos concorrentes modificam o mesmo registro.
Evolução de esquema
Eventos sobrevivem a várias versões do software. Adicione campos de modo compatível, defina valores padrão e evite mudar o significado de propriedades existentes. Contratos testados no CI impedem que um produtor quebre dezenas de consumidores silenciosamente.
Outbox: o elo entre banco e mensageria
Gravar o pedido no banco e publicar a mensagem são duas operações. Se uma funcionar e a outra falhar, o sistema fica inconsistente. O padrão transactional outbox grava o dado de negócio e o evento na mesma transação. Um processo posterior publica a outbox e marca o envio. Com idempotência no consumidor, o fluxo tolera reinícios sem perder fatos.
Quando não é possível alterar a aplicação, CDC pode ler essa tabela ou as alterações da base. Ainda assim, uma mudança técnica de coluna não é automaticamente um evento de negócio. Uma camada de transformação deve filtrar ruído, aplicar nomes estáveis e remover campos desnecessários.
Tempo real para agentes e automações
Agentes de IA tomam decisões melhores quando recebem contexto atual. Em 2026, AWS e Google Cloud destacaram padrões nos quais mudanças e streams acionam agentes em vez de depender de consultas tardias. Um evento de atraso pode iniciar análise, reunir pedido, rota e contrato e sugerir uma ação ao operador.
Isso não significa deixar a IA agir sem limites. O evento inicia o fluxo; regras determinísticas validam valores, permissões e ações críticas. Aprovação humana continua necessária quando há impacto financeiro, contratual ou de segurança.
Segurança, privacidade e governança
- autentique produtores e consumidores com identidades próprias;
- autorize publicação e leitura por tópico, ambiente e finalidade;
- criptografe transporte e armazenamento;
- evite dados pessoais completos quando um identificador basta;
- defina retenção, descarte e residência dos eventos;
- registre acesso e mudanças de esquema;
- proteja webhooks contra replay e valide assinatura.
Eventos podem criar cópias em vários lugares. O desenho deve considerar LGPD desde o início: minimização, rastreabilidade e mecanismos para retificação ou eliminação quando aplicáveis.
Observabilidade de ponta a ponta
Monitorar apenas se o broker está ativo é insuficiente. A empresa precisa saber quanto tempo uma mudança leva até cada resultado. Use identificadores de correlação, métricas de atraso por consumidor, idade da mensagem mais antiga, taxa de erro, retries e tamanho da fila de exceção.
Um painel comercial pode mostrar “pagamento até expedição” e “cadastro até primeira abordagem”, além das métricas técnicas. Assim, a integração é avaliada pelo efeito no processo, não só pela quantidade de mensagens.
Quando não usar eventos
Uma chamada síncrona é melhor quando o usuário precisa da resposta imediata para continuar, como validar saldo antes de confirmar uma operação. Polling moderado pode bastar para um relatório diário. Uma fila não corrige dados ruins nem elimina a necessidade de contratos claros.
Também evite criar dezenas de tópicos antes de entender o domínio. Comece por um fluxo comercial relevante, defina proprietário e acordo de nível de serviço, e expanda com evidências de volume, dependências e benefício.
Plano de implantação em seis etapas
- mapeie o evento de negócio, produtores, consumidores e atraso atual;
- escolha webhook, broker ou CDC conforme a capacidade da origem;
- defina esquema, idempotência, ordenação e política de retries;
- implemente outbox ou mecanismo equivalente de consistência;
- adicione segurança, correlação, alertas e fila de exceção;
- compare tempo de ciclo, erros, chamadas e custo antes de ampliar.
A ProativaIA constrói sistemas sob medida, aplicativos e automações inteligentes conectados ao ERP, CRM, pagamentos e canais de atendimento. Podemos desenhar um piloto orientado a eventos, integrar legados por CDC e entregar observabilidade desde o primeiro fluxo.
Referências
- AWS: fundamentos de arquitetura orientada a eventos.
- AWS: barramentos de eventos aprimorados, 24 de setembro de 2026.
- AWS: streams em tempo real para aplicações agênticas, 18 de agosto de 2026.
- Google Cloud: aplicações de IA com dados em streaming, 18 de maio de 2026.
- Google Cloud: captura de mudanças em tempo real, 22 de abril de 2026.
