FC ConcursosFC Concursos

Questão FC890598

Uma equipe de analistas está desenvolvendo um sistema de notificação em tempo real para informar outros sistemas sobre alterações de status em processos judiciais. A equipe deve ba

Mensageria (Messaging)

FGV · 2026

Uma equipe de analistas está desenvolvendo um sistema de notificação em tempo real para informar outros sistemas sobre alterações de status em processos judiciais. A equipe deve basear o sistema em filas de mensagens, utilizando um servidor RabbitMQ. A fim de minimizar os custos associados ao tráfego de notificações, o sistema deve buscar, o máximo possível, entregar cada notificação exatamente uma vez.

 

Para que o sistema opere dentro dos critérios propostos, a equipe deve configurar o servidor RabbitMQ de forma a:

  1. usar filas temporárias e desativar ACKs;
  2. definir fanout exchanges com filas exclusivas;
  3. ativar o modo NACK nos consumidores e usar mensagens transitórias;
  4. ativar publisher confirms, usar filas duráveis e mensagens persistentes;
  5. habilitar ACKs manuais nos consumidores e desabilitar persistência de mensagens.
Mostrar resposta e comentário

Gabarito

D

Comentário do professor

Ativar publisher confirms faz com que o produtor receba uma confirmação do RabbitMQ quando a mensagem foi aceita e, quando aplicável, gravada em disco. Essa confirmação evita reenvios desnecessários pelo produtor e reduz a chance de mensagens duplicadas no tráfego.


Usar filas duráveis garante que a própria definição da fila persista após reinicializações do broker. Marcar mensagens como persistentes ordena ao RabbitMQ que grave o conteúdo em disco, protegendo-as contra perda em quedas do servidor.


Combinadas, essas configurações minimizam retransmissões e perdas, aproximando-se de uma entrega exactly-once na prática. Para robustez completa, associe isso a ACKs de consumidores e lógica idempotente no receptor.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo