Olá, Diego.
Tudo bem?
Entendo que essa parte possa ter gerado alguma confusão.
A criação da Exchange de pagamentos no microserviço de pagamento (produtor) e a criação das outras Exchanges no microserviço de avaliação (consumidor) foi feita dessa maneira para facilitar a organização do código e evitar redundâncias.
No caso do microserviço de pagamento, ele é responsável por produzir as mensagens de pagamento, então faz sentido que a Exchange de pagamento seja criada lá. Já no microserviço de avaliação, ele é o consumidor dessas mensagens, então ele precisa conhecer as Exchanges para poder consumir as mensagens.
Por exemplo, se criássemos a Exchange de pagamento tanto no produtor quanto no consumidor, estaríamos duplicando código e isso poderia levar a problemas de manutenção no futuro. Além disso, se precisássemos fazer alguma alteração na Exchange de pagamento, teríamos que fazer essa alteração em dois lugares diferentes, o que não é ideal.
No código da aula, a Exchange pagamentos.dlx
e a fila pagamentos.detalhes-avaliacao-dlq
foram criadas no microserviço de avaliação porque é este serviço que vai lidar com as mensagens que não puderam ser processadas corretamente. Essas mensagens são movidas para a fila pagamentos.detalhes-avaliacao-dlq
e a Exchange pagamentos.dlx
é usada para rotear essas mensagens para a fila correta.
Espero ter ajudado e bons estudos!