Kafka 消费者订阅了多个Topic,在poll的时候,能否指定poll哪个Topic的数据? 比如 consumerA 订阅了 Topic1 和 Topic2 的消息。 但是我在本次 poll的时候,只想poll Topic1的消息并提交偏移量,而不处理 Topic2 的消息。下次poll的时候,只处理 Topic2 的消息并提交偏移量,而不处理 Topic1 的消息。
不行的,也没有必要。
1、pull到消息之后,等待你处理完成后,消费者才会继续拉取新的消息。
2、即使你自己实现逻辑,但消费者的超时时间(默认30秒),如果超过了时间,会将这个消费者踢出,重新平衡消费者,导致重复消费,也会影响到你的另外一个主题的消息。
kafka消费者拉取消息是批量pull的,一个批次可能有2000-3000条消息,你拿到消息之后,将这一批消息发送到业务层拆分处理。
所以,你没有必要这么做的,还不如直接写2个消费者分别订阅各种的topic好了。
你的答案