devterview_$ iniciar simulação

Quando usar uma fila de mensagens

MédioPlenoDesign de sistemas

Pergunta

Em que situação você introduziria uma fila de mensagens (ex: SQS, RabbitMQ) entre dois serviços?

Resposta esperada

Quando o produtor não precisa (ou não deve) esperar o consumidor terminar o processamento — desacoplando os dois no tempo. Casos típicos: processar um upload de vídeo, enviar emails em lote, ou absorver picos de tráfego sem sobrecarregar o serviço downstream (a fila funciona como buffer). O trade-off é a consistência eventual: o efeito da ação não é imediato, e o sistema precisa lidar com falhas de processamento (retry, dead-letter queue) em vez de simplesmente devolver um erro síncrono.

Por que perguntam isso

Boa resposta menciona dead-letter queue e idempotência do consumidor — sinal de quem já operou fila em produção, não só leu sobre o conceito.

#mensageria#arquitetura
publicidade

Relacionadas