Fluxo de execução
A execução das integrações é feita de forma assíncrona através de background services.
O framework oferece suporte a dois modelos de execução: Pooling e Pub/Sub (processamento de mensagens).
Pooling
No modelo de pooling, o fluxo funciona da seguinte maneira:
- O serviço realiza uma consulta periódica a um banco de dados ou API externa.
- Os dados são interpretados e transformados (parse/conversão de tipos).
- O resultado é enviado para o integrador ou persistido no banco de dados.
Esse modelo é adequado para integrações em que o sistema externo não disponibiliza eventos, sendo necessário "perguntar" periodicamente se há novos dados.
Pub/Sub (Mensageria)
No modelo baseado em mensageria:
- O serviço fica escutando mensagens em um broker (Inicialmente Azure Service Bus, futuramente aceitando também Kafka, RabbitMQ, etc).
- Ao receber uma nova mensagem, o framework inicia o processo de query (a partir do conteúdo da mensagem).
- Os dados são interpretados e transformados.
- O resultado é enviado para o integrador ou persistido no banco de dados.
Esse modelo é ideal para sistemas que demandam processamento em tempo real, garantindo menor latência e maior reatividade.
Em ambos os casos, o framework unifica a lógica de execução, aplicando os mesmos conceitos de consulta → conversão → envio, independentemente do mecanismo de disparo (pooling ou pub/sub).