Voltar aos resultados

Fila de mensagens e pub/sub

Message Queue / Publish-Subscribe (Pub/Sub) / Event-driven

Integração assíncrona
Intermediário
Categoria: 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

Termos relacionados