Fila de mensagens e pub/sub
Message Queue / Publish-Subscribe (Pub/Sub) / Event-driven
Integração assíncrona
IntermediárioCategoria: Protocolos e integraçõesSubcategoria: APIs e eventos
O que significa
É a infraestrutura que separa quem produz um pedido de quem o processa. As mensagens entram em uma fila e são consumidas quando há capacidade disponível. No modelo pub/sub (publicar e assinar), vários consumidores podem receber o mesmo evento e reagir a ele de formas diferentes.
Filas absorvem picos de demanda, garantem que nada se perde, permitem novas tentativas e são a base de pipelines de IA assíncronos e de arquiteturas orientadas a eventos.
Um recurso importante é a fila de mensagens mortas (dead-letter queue), para onde vão os pedidos que falharam repetidamente e precisam de atenção.
Como usar na prática de produto
Em Produto, se a capacidade de IA não precisa responder na hora, colocar uma fila na frente traz várias vantagens: controle de custo (processar em lote, com desconto), resistência a picos e a quedas do fornecedor de modelo, e um lugar definido para os casos que falharam.
A fila de mensagens mortas é especialmente importante em IA: é para onde os erros precisam ir, para serem revisados, e não para o esquecimento. Ela precisa de dono e de rotina de revisão.
Por exemplo, fotos de vistoria entram na fila; o serviço de visão consome em lote; as falhas vão para a fila de mensagens mortas, revisada diariamente por uma pessoa.
Quando usar este termo ou outro
Use fila de mensagens para processamento assíncrono, volume alto e garantia de entrega.
Use API síncrona quando a pessoa está esperando a resposta.
Use webhook para avisar que o processamento terminou.
Uma forma simples de diferenciar: fila organiza o trabalho; webhook avisa o resultado; API síncrona entrega na hora.
Exemplos de aplicação
- Vistoria: fotos entram na fila, o modelo de visão processa em lote, falhas vão para revisão.
- Atendimento: chamados são classificados em segundo plano sem travar a interface.
- Documentos: contratos enviados são processados conforme a capacidade disponível.
- Eventos: vários sistemas reagem ao mesmo evento, como “pedido concluído”.
- Resiliência: manter o serviço funcionando durante indisponibilidade do fornecedor de modelo.
Origem do termo
Middleware de mensageria (IBM MQ, anos 1990); pub/sub popularizado por Kafka (LinkedIn, 2011) e serviços de nuvem.
Fonte técnica
Google Cloud Architecture Center, Event-driven architectures; Apache Kafka documentation
