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:
- usar filas temporárias e desativar ACKs;
- definir fanout exchanges com filas exclusivas;
- ativar o modo NACK nos consumidores e usar mensagens transitórias;
- ativar publisher confirms, usar filas duráveis e mensagens persistentes;
- 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