首页 > 解决方案 > 使用 kafka-go 在 Kafka 中安排消费者的创建

问题描述

我是 kafka 的新手,目前正在研究它。我在 golang 中使用 kafka-go 来创建生产者和消费者。目前我能够创建一个生产者,但我希望在创建主题的生产者后创建消费者,而不是每次都创建。意味着对于每个主题,只创建一次消费者。此外,当需要为主题创建更多消费者以平衡负载时,它会被创建。有没有办法通过 goroutines 或 Faktory 来安排呢?

标签: goapache-kafkakafka-consumer-api

解决方案


你不应该有一个耦合的生产者/消费者,卡夫卡让你有完全解耦的生产者/消费者。

即使主题不存在,您也可以运行您的消费者(Kafka 将创建它,您只会得到一个领导者不可用警告),并随时运行您的生产者。

关于缩放,这个想法是您创建尽可能多的分区,因为您可能希望您的主题被缩放(消费者数量)。

这是一些关于主题分区策略的阅读: https ://blog.newrelic.com/engineering/effective-strategies-kafka-topic-partitioning/

你在网上有很多关于这个的阅读材料。

雅尼克


推荐阅读