我已经配置了默认并发设置,并且我有另一个组需要不同的并发级别,但是第二个组无论如何都将默认并发设置为1。 使用Spring Boot 1.5.4和springCloudVersion Dalston.SR4可以正常工作。 当前版本是spring-boot 2.0.4,springCloudVersion是Finchley.SR1。 我正在使用RabbitMQ。
spring.cloud.stream.default.group=foo
spring.cloud.stream.default.consumer.concurrency=3
我还有另一个自定义组
spring.cloud.stream.bindings.customChannel.group=bar
spring.cloud.stream.rabbit.bindings.customChannel.consumer.concurrency=5
foo组中的所有通道均为3。但是customChannel的并发默认为1。有人在升级方面遇到过类似的问题吗?
答案 0 :(得分:1)
肯定还有其他事情发生;这对我来说很好:
@SpringBootApplication
@EnableBinding(So52172152Application.Foo.class)
public class So52172152Application {
public static void main(String[] args) {
SpringApplication.run(So52172152Application.class, args);
}
@StreamListener("one")
public void listen1(String in) {
}
@StreamListener("two")
public void listen2(String in) {
}
@StreamListener("three")
public void listen3(String in) {
}
public interface Foo {
@Input
MessageChannel one();
@Input
MessageChannel two();
@Input
MessageChannel three();
}
}
和
spring.cloud.stream.default.group=foo
spring.cloud.stream.default.consumer.concurrency=3
spring.cloud.stream.bindings.three.group=bar
spring.cloud.stream.bindings.three.consumer.concurrency=5
我在每个foo组队列中看到3个使用者,在bar组中看到5个使用者。