Discussão sobre este post

Avatar de User
Avatar de FullAgenticStack

esses cenários são impossíveis se você usar técnicas básicas como normalize no payload, outbox e CDC

A “Poison Pill”: O payload do evento veio com um caractere invisível no campo contract_id, causando uma Exception de deserialização que trava o processamento daquele lote.

Falha de Infra: O pod do Kubernetes estava reiniciando por OOM (Out of Memory) bem naquele segundo.

Bug Silencioso: O código consumiu a mensagem, mas falhou ao gravar no banco devido a um Deadlock, e a configuração de retry estava mal implementada.

O Resultado é que o evento se perdeu. Para o sistema, o cliente ainda está “Ativo”. Para o cliente, o cartão continua passando na maquininha.

1) o mínimo eh limpar todas as propriedades, principalment6e se vvc vai mandar pra LLM, cair nesse prompt injection é pq nunca usou LLM, só limpar com a regex /[\p{Cc}\p{Cf}]/gu

2) se meu UbiQ não receber1 ACK em 10s ele re-emite, mas eu rodo 2 servidores clones de forma concorrente, porra o cara ta dando exemplo de sistema financeiro e não rodar um replica em tempo real já da pra imaginar o sistema

3) se não gravou no banco o CDC não emitiu o evento, meu DataAgent deixa os eventos em Outbox até receber o evento colnfrimando a mudança no banco. Eu não acredt[ito q alguem cairia nesses erros fazendo sistema financeiro, me recuso a acreditar

Você nem citou Eventsourcing que é obrigatório pois é a ÙNICA fonte da verdade e única forma REAL de auditoria e também não citou nenhuma SAGA para possível self-healing, tirando apenas esses pontos eu fiquei muito feliz de ler 1 artigo de Self-healing que não é DevOps, o conceito que evangelizo desde o ano passado não é para o cenário, é para corrigir as intenções dos usuários que chegam no servidor: Intent-basead Healing

Esse comportamento do Sweeper eu possuo no Agent que fica escutando todos eventos necessário, minha arquitetura é coreografada, como assim o Evento falhar? Não gasta criar um GC rodando diariamente emitindo 1 evento por cada registro achado.

Na minha arquitetura 1 outro Agent não atua no outro, o comportamento do Sweeper é de um SubAgent da camada de Domínio e cada evento q receber ele executa seu comportamento. Fora isso você ta de parabéns

Avatar de Roger Lozada Cano

Post do mais alto nível, adorei!

Em sistemas distribuídos eu tenho utilizado bastante os patterns de mensageria do livro Enterprise Integration Patterns (EIP), mas não conhecia sobre essa tática de criação de Sweepers. O que chega mais perto do que vc desenhou é o pattern Request/Reply na minha visão, mas ele não é proativo como o Sweeper descrito no seu post, ele ainda ficaria esperando a resposta.

2 comentários a mais...

Nenhum post

Pronto para mais?