我们可以收听 Kafka Consumer 的特定键控消息吗

Posted

技术标签:

【中文标题】我们可以收听 Kafka Consumer 的特定键控消息吗【英文标题】:Can we listen to specific keyed messages by Kafka Consumer 【发布时间】:2017-02-07 15:19:29 【问题描述】:

我对卡夫卡非常陌生。我有一个要求,我只需要阅读一些特定的消息。

为此,我将向 Kafka 推送一条带有一些键和值的消息。有没有一种方法可以让消费者订阅特定的密钥列表。因此,当消息推送到 Kafka 时,如果消息具有消费者正在侦听的密钥,则消费者将进行消费。

【问题讨论】:

Can i consume based on specific condition in Kafka?的可能重复 你可能想研究一下 redis 或 0mq,它们都提供了 pub/sub,可以在服务器端而不是客户端端对消息进行细粒度过滤。 【参考方案1】:

我能想到的唯一方法是您可以将您的消费者分配给发布者使用您感兴趣的密钥向其发送消息的分区。您还需要编写自己的分区程序,这将允许您发送带有键 X 的消息总是发送到同一个分区。

更简单的方法:编写一个只处理你想要的消息的消费者。

【讨论】:

以上是关于我们可以收听 Kafka Consumer 的特定键控消息吗的主要内容,如果未能解决你的问题,请参考以下文章

Kafka有个啥参数可以让consumer阻塞知道新消息到达?

使用 Kafka Avro Console Consumer 时如何为特定的 Schema 注册表传递参数?

kafkaStream

使用 Python 监控 Kafka Consumer LAG

Kafka查看topic、consumer group状态命令

夯实Kafka知识体系及基本功分析一下消费者(Consumer)实现原理分析「原理篇」