Vocês precisam saber disso Desenvolvedores 😨 😀

Durante o meu tempo como programador cometi muitos erros, aprendi muitas coisas, e umas das coisas que eu mais errei foi, tentar fazer tudo com meu código, tornando ele no maior exemplo de monolítico-bomba-relógio possível.

Enquanto era um juninho inexperiente tentava fazer tudo somente com meu código, desde memoria, concorrência, tarefas simultâneas e o principal filas, por isso venho-lhe apresentar uma ferramenta incrível para melhorar suas soluções:

RabbitMQ é uma sistema de mensageria que permite que diferentes sistemas distribuídos se comuniquem de maneira confiável. Ele usa o modelo de fila de mensagens, onde as mensagens são publicadas em uma fila e consumidas pelos consumidores. RabbitMQ é ótimo para lidar com picos de tráfego e garantir a confiabilidade das mensagens.

Exemplo real de uso 😀: para evitar que sua aplicação tenha que enviar milhares de e-mail simultâneos que sobrecarregariam ela, você pode colocar a ordem para enviar esse e-mail numa fila, para que um microserviço envie esse e-mail assim que ele conseguir da forma que ele aguenta

Fica minha dica para também olhares o Kafka e sobre sistemas orientado a eventos

Você falou dos prós do mensageria externa. Mas não falou dos contras e são muitos!

Ainda mais para projetos pequenos e médios! Que são 99% dos projetos.

Para boa parte dos projetos da pra usar um bom e velho banco de dados! Um exemplo aqui https://www.youtube.com/watch?v=jTLP5DrIocA

Ele esta usando o Postgres como mensageria! Mas da pra ser outros bancos de dados como MariaDB ou Mysql

Antes de partir para um RabbitMQ ou Kafka(que são ótimos) para alguns projetos onde toda uma equipe vai cuidar dele, da pra usar um banco de dados!