[英]How to create a RabbitMQ consumer on a Ruby on Rails web app?
[英]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.