![](/img/trans.png)
[英]How to run multiple threads of the same process in Java - Spring Boot
[英]How can I run multiple listeners in Spring Boot Java?
我不断收到来自第三方的数据馈送,并希望在不到一分钟的时间内处理大约 10 万条消息。 所以想实现一个消息队列,通过它我可以卸载处理部分,并将消息推送到一个队列,在那里 100 个(或任何数字)中的一个工作人员选择工作并处理它。
我已经阅读了基于 JMS 和 Redis 的消息传递,但我不确定如何运行多个侦听器。 单个侦听器已配置。
Spring JMS 允许您通过“下限”字符串(例如“5-10”)或简单的上限字符串(例如“10”)(在这种情况下下限为 1)来指定并发限制。
侦听器容器将始终保持最小数量的消费者 (setConcurrentConsumers(int)) 并缓慢扩展到最大数量的消费者
看:
Spring boot 配置 bean 中的示例:
@Configuration
@EnableJms
public class AppConfig {
@Bean
public DefaultJmsListenerContainerFactory jmsListenerContainerFactory() {
DefaultJmsListenerContainerFactory factory
= new DefaultJmsListenerContainerFactory();
factory.setConnectionFactory(connectionFactory());
factory.setConcurrency("3-10");
return factory;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.