簡體   English   中英

如何創建Kafka消費者群體?

[英]How to create Kafka consumer groups?

我是卡夫卡的新手。 我正在嘗試使用分配給該主題的1個主題和1個使用者組來實現簡單的排隊系統。 但是我無法弄清楚如何創建一個消費者群體。

ps我使用Ruby,使用kafka-rb gem。

謝謝! 埃里克

我一直在尋找相同的東西,我不認為它實際上是Kafka的一部分,而是Java驅動程序與ZooKeeper一起使用的東西。 如果您閱讀了Kafka 0.7( http://kafka.apache.org/07/design.html )的設計文檔,那么有一個標題為“消費者和消費者群體”的部分,他們會對此進行討論。 這是有道理的,因為ZooKeeper可以很容易地用於跟蹤一組消費者的最新偏移量。

如果您查看kafka consumer( http://kafka.apache.org/documentation.html )的配置, group.id是一個唯一的字符串,用於標識此使用者所屬的使用者組。 默認情況下,它是“”

似乎kafka-rb沒有提供這樣做的方法。 但其他一些寶石可以幫助你做到這一點,如https://github.com/zendesk/ruby-kafka#consumer-groups https://github.com/karafka/karafka#group

更新:我們(Zendesk)發布了Racecar ,這是一個基於ruby-kafka構建的簡化Kafka消費者框架。

Racecar消費者看起來像這樣:

# simple_consumer.rb
class SimpleConsumer < Racecar::Consumer
  subscribes_to "some-topic"

  def process(message)
    puts message.value
  end
end

要運行它,只需執行以下操作:

$ gem install racecar
$ racecar --require my_consumer MyConsumer

閱讀更多關於Github: https//github.com/zendesk/racecar

原帖:


以下是你在ruby-kafka中的表現

require "kafka"

kafka = Kafka.new(seed_brokers: ["kafka1", "kafka2"])
consumer = kafka.consumer(group_id: "my-group")

consumer.subscribe("my-topic")

consumer.each_message do |message|
  puts message.value
end

有關更多信息,另請參閱自述文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM