2
respostas

Design Pattern Message Filter não compatível

A dúvida é se podemos realmente afirmar que JMS e ActiveMQ são realmente não compatíveis com o design pattern de message filter.

Não sei se entendi certo, mas os messages filters não são equivalentes aos tópicos?

Seguindo o exemplo dado para o RabbitMQ no site https://www.enterpriseintegrationpatterns.com/patterns/messaging/Filter.html , criar um tópico para widget e outro para gadget não teria o mesmo efeito?

2 respostas

Pensando melhor, no contexto onde não se pode alterar o producer para eventualmente passar a enviar para um determinado/novo tópico, JMS com ActiveMQ realmente não atende.

Olá Danilo, tudo bem?

Entendo sua dúvida sobre a compatibilidade entre JMS, ActiveMQ e o design pattern de message filter. Embora o JMS e o ActiveMQ sejam tecnologias de mensageria muito poderosas, eles não possuem uma implementação nativa do design pattern de message filter.

No exemplo que você mencionou, onde é sugerido criar um tópico para widget e outro para gadget, isso não seria exatamente equivalente a um message filter. No caso dos tópicos, todas as mensagens enviadas para o tópico seriam entregues a todos os consumidores inscritos nele. Já com o message filter, é possível definir critérios mais específicos para filtrar as mensagens que serão entregues a cada consumidor.

No entanto, é possível implementar um message filter utilizando outras funcionalidades disponíveis no JMS e no ActiveMQ. Por exemplo, você pode utilizar o recurso de seletores de mensagens do JMS para filtrar as mensagens com base em critérios específicos. Dessa forma, você pode criar uma lógica personalizada para determinar quais mensagens serão entregues a cada consumidor.

Espero ter ajudado a esclarecer sua dúvida! Se tiver mais alguma pergunta, estou à disposição. Bons estudos!