Java 组属性在spring stream云中不工作?

Java 组属性在spring stream云中不工作?,java,spring-boot,apache-kafka,spring-cloud,spring-cloud-stream,Java,Spring Boot,Apache Kafka,Spring Cloud,Spring Cloud Stream,我使用SpringStream云来消费卡夫卡上的消息。 当卡夫卡上的信息产生时,所有的消费者都点击了 但是卡夫卡的文件说,通过使用组 只有一个消费者使用消息 这是我的消费代码 @EnableBinding(Sink.class) public class Consumer2 { @StreamListener(target = Sink.INPUT) public void consume(String message) { System.out.print

我使用SpringStream云来消费卡夫卡上的消息。 当卡夫卡上的信息产生时,所有的消费者都点击了

但是卡夫卡的文件说,通过使用组 只有一个消费者使用消息

这是我的消费代码

@EnableBinding(Sink.class)

public class Consumer2 {


    @StreamListener(target = Sink.INPUT)
    public void consume(String message) {
        System.out.println("33333");

    }

    @StreamListener(target = Sink.INPUT)
    public void consume1(String message) {
        System.out.println("444444");

    }


}
}
这是我的配置 但我的两种方法都称为:(


使用该配置,您只有1个使用者
(SINK.INPUT)
,而不是2个使用者(
@StreamListener
不是使用者,它是处理入站消息的模型)


这就是为什么spring将入站消息路由到具有相同接收器的两个
@StreamListener
注释。

在一个实例组中没有影响

当运行应用程序的多个实例时,每次输入通道中有新消息时,都会通知所有订户

大多数情况下,我们只需要对消息进行一次处理。Spring Cloud Stream通过消费群体实现此行为

要启用此行为,每个使用者绑定都可以使用spring.cloud.stream.bindings..group属性指定组名:

第5.4节

spring:
  cloud:
    stream:
      default-binder: kafka
      kafka:
        binder:
          brokers:
            - localhost:9092
      bindings:
        input:
          binder: kafka
          destination: abbas
          content-type: text/plain
          group: input-group-1

        output:
          binder: kafka
          destination: abbas
          group: output-group-1
          content-type: text/plain