Apache Kafka:重播主题中的消息

rm1*_*345 9 apache-kafka spring-kafka

我正在考虑使用Apache Kafka作为事件存储来在微服务中存储事件.

我通过各种博客阅读的一件事是,Kafka可以被认为是单一的事实来源,其中Kafka日志将存储给定主题的所有事件.

我想知道Kafka是否有能力从一开始就重播消息(例如,如果发生硬盘驱动器/网络崩溃)?

(请注意,我发现在主题目录下的/ tmp文件夹中存储了一些日志).有没有人知道可以调用以重播主题中的消息的任何命令(如果有的话)?

Gar*_*ell 5

是的,您可以寻求特定的偏移量,但是

时间的开始

取决于主题或代理配置。IIRC,默认保留期为7天。

请参阅Kafka文档


Vis*_*ote 5

是的,您可以重播消息。作为消费者可以控制重置偏移量。您可以从头开始读取消息,或者如果您知道任何现有的偏移值,也可以从那里读取它。消息提交后,它将保留在主题中,直到其保留期结束。默认保留期为 7 天,但您可以随时更改。