Aparência
Eventos
A plataforma usa eventos para comunicação interna entre componentes e para as métricas regulatórias. Um evento só é publicado se a operação correspondente foi gravada no banco, e não se perde se o processo cair entre a gravação e a publicação.
Eventos de negócio
- A operação de negócio e o evento são gravados na mesma transação do PostgreSQL, na tabela de outbox. Se o evento não puder ser gravado, a operação inteira é desfeita.
- Um relay lê o outbox a cada 500 ms e publica os eventos no NATS JetStream, no formato CloudEvents 1.0. O stream guarda os eventos em disco, com três réplicas e deduplicação.
- Um evento que falha cinco vezes vai para a fila de mensagens mortas, para análise, sem travar os demais.
Métricas regulatórias (PCM)
- O serviço de Open Finance registra cada interação regulada, sem dados pessoais, num outbox próprio.
- O relay publica as interações no NATS JetStream.
- O event-runtime consome o stream com um consumidor durável e grava cada interação uma única vez, com controle de idempotência.
- Os lotes são aprovados pelo operador e enviados à Plataforma de Coleta de Métricas com mTLS, com reconciliação em D+1 e D+7.