【发布时间】:2015-11-10 00:34:35
【问题描述】:
我们设置了 Kafka,以便能够由多个服务器并行处理消息。但是每条消息只能被处理一次(并且只能由一个服务器)。我们已经启动并运行了它,并且运行良好。
现在,我们面临的问题是 Kafka 消费者批量读取消息以获得最大效率。如果/当处理失败、服务器关闭或其他情况时,这会导致问题,因为那时我们会丢失即将处理的数据。
有没有办法让消费者一次只阅读消息,让 Kafka 保留未处理的消息?就像是;消费者拉出一条消息 -> 处理 -> 完成后提交偏移量,重复。使用 Kafka 是否可行?有什么想法/想法吗?
谢谢!
【问题讨论】:
标签: apache-kafka