如何解决spring boot 持久订阅者的话题
我正在使用 spring boot 2 向主题发送 jms 消息。
当我有一个持久订阅者使用 jmsListener 指向 DefaultJmsListenerContainerFactory bean 时,配置了 clientId、subscripionDurable、pubSubDomain。
@Bean
public JmsListenerContainerFactory<?> myDurableAFactory(ConnectionFactory connectionFactory,DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
configurer.configure(factory,connectionFactory);
factory.setClientId("id1");
factory.setSubscriptionDurable(true);
factory.setConcurrency("2");
factory.setPubSubDomain(true);
return factory;
有了一个持久订阅者,它就可以正常工作。 因此,如果我希望消息被 2 个不同的持久订阅者使用,那么我创建另一个 jmsListener,指向另一个具有不同 clientId 的 DefaultJmsListenerContainerFactory。
我注意到消息被消费了,但只有一个持久订阅者,任一订阅者。我希望消息被双方消费。 我正在使用 OracleAq。
我是否缺少设置?
通过将每个持久订阅者的@JmsListener 订阅更改为不同来修复。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。