Como compartilhar mensagens, publicadas no Tópico, entre várias VMs, no Spring Jms Tibjms
Meu aplicativo está consumindo mensagens publicadas em um Tópico. Eu tenho 3 servidores nos quais meu código de aplicativo está sendo executado. Com a implementação atual, as mensagens são distribuídas para todas as VMs em execução, ou seja, a cópia da mensagem é recebida por todos os consumidore
Meu requisito é que todo consumidor receba uma mensagem distinta, ou seja, nenhum consumidor deve receber a mesma mensage
Abaixo estão as bibliotecas que estou usando:
spring jms 4.2.7Java jms 2.0tibco jms 8.0 wildfly-swarm como servidorAtualmente, tenho a seguinte configuração:
TibjmsConnectionFactory factory = new TibjmsConnectionFactory("server-url");
factory.setUserName("username");
factory.setUserPassword("password");
factory.setClientID("clientId");
DefaultMessageListenerContainer listener = new DefaultMessageListenerContainer();
listener.setPubSubDomain(true);
listener.setMessageListener(myMessageListener);
listener.setDestination(new TibjmsTopic("topic"));
listener.setConnectionFactory(factory);
listener.setSessionTransacted(true);
listener.setSessionAutoAcknowledged(Session.CLIENT_ACKNOWLEDGE);
listener.setSubscriptionDurable(true);
listener.setDurableSubscriptionName("subscription");
listener.setSubscriptionShared(true);
Mas, não está fazendo o que estou esperando. Usando a configuração acima, todos os consumidores estão recebendo todas as mensagen
penas para adicionar, especifiquei o mesmo DurableSubscriptionName, mas ClientId distinto em todas as instâncias em execuçã
Que configuração estou faltando? Alguém pode ajudar por favor? Agradecemos uma tonelada de antecedência. :)