相关疑难解决方法(0)

卡夫卡消费者的多个话题

我有一个主题列表(现在是10个),其大小可以在未来增加.我知道我们可以生成多个线程(每个主题)来从每个主题中使用,但在我的情况下,如果主题数量增加,那么从主题中消耗的线程数量会增加,这是我不想要的,因为主题不是过于频繁地获取数据,因此线程将是理想的.

有没有办法让一个消费者从所有主题中消费?如果是,那我们怎样才能实现呢?卡夫卡还将如何维持这种抵消?请提出答案.

java multithreading apache-kafka kafka-consumer-api

18
推荐指数
2
解决办法
2万
查看次数

Kafka 消费者组 ID 和消费者重新平衡问题

我在我的生产服务器中使用 Kafka0.10.0和 zookeeper 3.4.6。我有 20 个主题,每个主题有大约 50 个分区。我总共有 100 个消费者,每个消费者都订阅了不同的主题和分区。所有消费者都具有相同的 groupId。那么,如果为特定主题添加或删除消费者,那么附加到不同主题的消费者也会经历重新平衡吗?

我的消费者代码是:

public static void main(String[] args) {
        String groupId = "prod"
        String topicRegex = args[0]
        String consumerTimeOut = "10000"
        int n_threads = 1
        if (args && args.size() > 1) {
            ConfigLoader.init(args[1])
        }
        else {
            ConfigLoader.init('development')
        }
        if(args && args.size() > 2 && args[2].isInteger()){
            n_threads = (args[2]).toInteger()
        }

        ExecutorService executor = Executors.newFixedThreadPool(n_threads)
        addShutdownHook(executor)
        String zooKeeper = ConfigLoader.conf.zookeeper.hostName
        List<Runnable> taskList = []
        for(int i = 0; i < …
Run Code Online (Sandbox Code Playgroud)

apache-kafka kafka-consumer-api apache-kafka-connect

3
推荐指数
1
解决办法
1340
查看次数