Urgent.News

What's breaking now, across thousands of outlets.

Tech

Como escalar um sistema legado com arquitetura orientada a eventos (sem reescrevê-lo)

Primeiro post de uma série sobre arquitetura orientada a eventos (EDA), construída em público a partir de um case fictício: a Faculdade Leal. Este post fica em nível de arquitetura — a implementação (Apache Camel, código dos consumers, etc.) vem nos posts seguintes, conforme for sendo construída. O problema Imagine que você é responsável pelo financeiro de uma faculdade grande. Todo mês, o…

A faculdade Leal enfrenta problemas com seu sistema legado, que gera faturas para milhares de alunos a cada mês. O processo demora cerca de 4 dias devido ao processamento linha a linha, sem expurgo de dados acumulados e falta de índices. Além disso, o usuário precisa fazer várias chamadas síncronas para o sistema legado e APIs externas, o que afeta a experiência do usuário.

Para resolver esses problemas, a faculdade adota uma arquitetura orientada a eventos (EDA). Nessa nova arquitetura, o processo de cálculo da fatura, geração do boleto e emissão da nota fiscal reagem a eventos, desacoplando-as entre si e do legado. Tudo isso é possível graças a um broker de mensageria, como o Apache Kafka, com eventos bem definidos.

Cada etapa do processo é tratada por um consumidor separado. Os consumidores responsáveis são:

1. Cálculo final da fatura: em vez de ser feito na solicitação do usuário, ele é executado durante a geração das faturas, para evitar atrasos causados em eventos como a falha da Prefeitura.

2. Persistência da fatura: um componente gera uma nova linha a cada cálculo, com data e hora, sem sobrescrever as anteriores. Isso permite consultas rápidas e um histórico completo para auditoria.

3. Geração do boleto: o boleto é gerado no clique do usuário, garantindo compatibilidade com diferentes métodos de pagamento.

4. Emissão da nota fiscal: caso a emissão falhe, a mensagem é redirecionada para uma fila de erros para tentativas de recuperação. Ao sucesso, a mensagem é enviada para a nota fiscal pronta.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Apple Releases iOS 27.0.1 With Face ID Bug Fix

Apple today released iOS 27.0.1, the first update for the iOS 27 update that came out two weeks ago . iOS 27.0.1 can be downloaded over the air by going to Settings > General > Software Update. Apple has also released iPadOS 27.0.1 and visionOS 27.0.1 updates, as well as iOS and iPadOS 26.7.1 updates for devices not updated to iOS and…

Sig Is Becoming The Reactive Engine

In the last Road To KiwiEngine post, I talked about Juice getting close to version 1.0. Juice has reached a point where I understand its responsibility pretty clearly.

  • Sig focuses on reactivity in KiwiEngine ecosystem
  • Juice handles styling, Sig manages reactivity
  • Sig incorporates JSX runtime for expressive interfaces

More from Monday 28 September →