Skip to content
Latchkey

O Que É um Message Broker? O Hub Que Roteia Mensagens

Um message broker é um middleware que recebe mensagens de produtores e as roteia para os consumidores certos com base em regras que você configura.

Onde uma fila é um único buffer, um message broker é o sistema que gerencia muitas filas e tópicos, decide para onde cada mensagem vai e cuida da entrega, persistência e retries. RabbitMQ, Kafka e serviços de nuvem como SQS ou Pub/Sub desempenham esse papel. O broker é a espinha dorsal de um sistema orientado a eventos ou assíncrono.

O que um broker faz

Um broker aceita mensagens, aplica regras de roteamento para decidir quais filas ou subscribers as recebem, as persiste conforme configurado e rastreia entrega e confirmação. É a peça central da infraestrutura de mensageria à qual produtores e consumidores se conectam.

Fila versus broker

Uma fila é um buffer; um broker é o servidor que hospeda filas e tópicos, aplica roteamento e gerencia a semântica de entrega. Você interage com uma fila; você opera um broker.

Modelos comuns de roteamento

  • Ponto a ponto: uma mensagem para exatamente um consumidor.
  • Publish-subscribe: uma mensagem distribuída para muitos subscribers.
  • Tópico ou routing keys: mensagens casadas com consumidores interessados.
  • Roteamento de dead-letter: mensagens não entregáveis postas de lado.

Brokers no pipeline

Testes realistas precisam do broker rodando. O CI comumente sobe o broker como service container, exercita os caminhos de publicar e consumir e o derruba a cada execução. Isso dá confiança no comportamento de roteamento e entrega que mocks não conseguem fornecer.

Peso operacional

Um broker é infraestrutura crítica: se estiver fora, os fluxos assíncronos travam. Isso eleva o nível de exigência quanto à segurança de deploy, health checks e monitoramento ao redor do broker, e faz da sua configuração algo que você normalmente gerencia como código e testa no CI.

Mantendo testes de broker rápidos

Subir um broker a cada execução de teste não é de graça. Runners gerenciados aquecidos (como o Latchkey) mantêm esse imposto de inicialização pequeno para que suítes de integração apoiadas em broker permaneçam ágeis.

Principais conclusões

  • Um message broker é o servidor que roteia, persiste e entrega mensagens.
  • Uma fila é um único buffer; um broker gerencia muitas filas e tópicos com regras de roteamento.
  • Testes realistas de broker precisam do broker rodando, o que adiciona tempo de inicialização ao CI.

Guias relacionados