【发布时间】:2018-05-09 19:34:36
【问题描述】:
我有一个正在接收消息的 kafka 主题。现在我的消费者收到一个具有各种字段的对象,比如 id 和 name。在一些之后我收到另一个对象等等。一段时间后,我想检查 id = {some number} 的对象是否存在于 kafka 的缓存中。那么有没有办法根据特定字段检查 kafka 缓存。
【问题讨论】:
标签: apache-kafka kafka-consumer-api
我有一个正在接收消息的 kafka 主题。现在我的消费者收到一个具有各种字段的对象,比如 id 和 name。在一些之后我收到另一个对象等等。一段时间后,我想检查 id = {some number} 的对象是否存在于 kafka 的缓存中。那么有没有办法根据特定字段检查 kafka 缓存。
【问题讨论】:
标签: apache-kafka kafka-consumer-api
您在这里谈论的是两个不同的消费者,Consumer-1 只是消费来自 Kafka 主题的消息,根据您的逻辑进行一些处理。
Consumer-2 从头开始消费主题中的所有消息,并将它们与一组 id 进行匹配。
随着消息添加到主题中,第二种情况将变得越来越昂贵。这不是为 Kafka 构建的用例,您可以在 ActiveMQ 中更有效地做到这一点。
如果您仍想使用 Kafka,另一种选择是您可以在内存中维护一个小的记录哈希集,您可以对它进行比较。
【讨论】: