阅读Kafka主题以多个偏移量

时间:2018-07-29 22:21:29

标签: apache-kafka kafka-consumer-api

假设我在单个Kafka分区中有一个topic(t),并且Consumer-group(X)中的单个使用者正在使用Topic t。另外,假设消息排序,没有分区切换。

现在,我想以偏移量的倍数阅读主题,而无需管理使用者偏移量(我要自动提交),例如,下面是topic stream with [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...] offsets and I want to set up consumer such that it reads only messages at multiple of 2, my consumer except for topic stream like 0, 2, 4 ....

当然,我可以基于偏移量在应用程序级别进行过滤,但是如果有其他方法,我也不想这样做。

为什么我要进行此成像,发现流量比预期的要高(产生更多消息),但我们不想错过2个偏移量的倍数上的执行(消费者)SLA(因此我们知道这对我们很重要),因此我们可以跳过其他内容,而只需阅读2的倍数即可。是的,可以选择拆分(不同的主题)。

1 个答案:

答案 0 :(得分:0)

  

如果有其他选择,我不想这样做。

不幸的是,没有其他选择。您的使用者正在轮询成批的连续邮件,因此,如果您的流量“高于预期”,您一次几乎总是收到多于一条消息。

如果您真的想要这样,创建一个包含两个分区的主题,使用空键产生事件,然后仅从其中一个分区进行消费