如何订阅消费者组以仅阅读一个主题?

问题描述 投票:0回答:1

我是Kafka的新手,我使用docker-compose.yml启动了Kafka集群以进行测试:

    version: '3.7'
    services:
     zookeeper:
      image: 'bitnami/zookeeper:3'
      container_name: zookeeper
      ports:
       - '2181:2181'
      volumes:
       - 'zookeeper_data:/bitnami'
      environment:
       - ALLOW_ANONYMOUS_LOGIN=yes
      networks:
       - kafka


     kafka:
      image: 'bitnami/kafka:2'
      container_name: kafka
      ports:
       - '9092:9092'
       - '29092:29092'
      volumes:
       - 'kafka_data:/bitnami'
      environment:
       - KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
       - ALLOW_PLAINTEXT_LISTENER=yes
       - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
       - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,PLAINTEXT_HOST://:29092
       - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092,PLAINTEXT_HOST://localhost:29092
       - KAFKA_CFG_DELETE_TOPIC_ENABLE=true
      depends_on:
       - zookeeper
      networks:
       - kafka

    volumes:
     zookeeper_data:
      driver: local
     kafka_data:
      driver: local

    networks:
     kafka:
      driver: bridge

我还创建了2个主题:test1test2,以及消费者组:test。我的问题是如何限制使用者组test仅能从主题test1中读取,而不能从test2中读取?因为当我使用以下命令启动console-consumer时:

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test2 --consumer-property group.id=test

它仍然可以从主题test2中读取消息。

[我是Kafka的新手,出于测试目的,我使用docker-compose.yml启动了Kafka集群:版本:'3.7'服务:zookeeper:图片:'bitnami / zookeeper:3'container_name:...

apache-kafka kafka-consumer-api
1个回答
0
投票
使用者组本身不使用任何消息。消费者组是拥有至少一个消费者的实体,它可以帮助您管理补偿,高可用性等。
© www.soinside.com 2019 - 2024. All rights reserved.