Arquitetura de software · Comunicação · 6 min de leitura
Filas e mensageria (pub/sub)
Em vez de chamar outro serviço e esperar, publique uma mensagem: quem precisa processa no seu ritmo, e picos viram fila em vez de erro.
Arraste para o lado para ver o diagrama inteiro.
Fila x pub/sub
- Fila: cada mensagem é processada por um consumidor (divisão de trabalho).
- Pub/sub (tópico): cada grupo de consumidores recebe uma cópia (vários interessados no mesmo evento).
Garantias de entrega
Quase sempre a garantia é pelo menos uma vez: a mesma mensagem pode chegar duas vezes. Por isso os consumidores precisam ser idempotentes. Ordem só é garantida dentro de uma partição (no Kafka, por chave).
Quando usar
- Tarefas lentas fora da requisição do usuário (e-mails, relatórios).
- Desacoplar serviços e absorver picos.
- Integrar sistemas por eventos.
Em resumo
- Desacopla produtor e consumidores.
- Picos viram fila, não erro.
- Entrega pelo menos uma vez → consumidores idempotentes.
- Use DLQ para mensagens que falham sempre.