Nos últimos dias desenvolvi um pequeno projeto para praticar mensageria assíncrona utilizando RabbitMQ integrado com .NET Minimal API. A ideia foi criar um produtor que envia mensagens para uma fila e um consumidor que processa essas mensagens em background.
O que implementei
- Endpoint HTTP
POST /send
para publicar mensagens no RabbitMQ - Conversão e envio da mensagem em bytes (UTF-8)
- Serviço Consumer rodando como
BackgroundService
para processar as mensagens recebidas - Estrutura organizada em dois projetos:
Api
(produtor) eConsumer
(consumidor)
Tecnologias utilizadas
- .NET 7+
- RabbitMQ
- RabbitMQ.Client
Principais aprendizados
- Criação de Minimal APIs com
MapPost
- Integração de filas RabbitMQ com
RabbitMQ.Client
- Implementação de consumidores assíncronos (
AsyncEventingBasicConsumer
) - Logging e boas práticas de organização de código
Próximos passos / melhorias futuras
- Persistência das mensagens em banco após consumo
- Retry automático em caso de falhas
- Uso de Dead Letter Exchanges (DLX)
- Implementação de testes automatizados
Esse projeto foi desenvolvido com foco em aprendizado e já está disponível no GitHub: BrunoSFreschi/Study.RabbitMQ
👉 Se você também já trabalhou com RabbitMQ ou Minimal API, adoraria trocar ideias e ouvir dicas de melhorias!
❤️ 💙 💜
Top comments (0)