首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果生产者执行重试,这两条消息是否具有相同的时间戳?

如果生产者执行重试,这两条消息是否具有相同的时间戳?
EN

Stack Overflow用户
提问于 2020-07-18 08:33:19
回答 1查看 366关注 0票数 1

至少一次语义学:如果生产者收到一个确认(ack)从卡夫卡经纪人和acks=all,这意味着消息已经写了一次准确的卡夫卡主题。然而,如果生产者超时或收到错误,它可能会重试发送消息,假设消息没有写到Kafka主题。如果代理在发送ack之前就失败了,但是在消息成功地写入了Kafka主题之后,这个重试将导致消息被写入两次,从而不止一次地传递给最终的使用者。

我知道时间戳是根据从生产者发送消息的时间来设置的。如果生产者执行重试,这两条消息是否具有相同的时间戳?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-18 11:33:44

默认情况下,在创建记录时设置时间戳。因此,是的,如果生产者执行重试,副本具有相同的时间戳。

如果将message.timestamp.type设置为LogAppendTime,则重复项将具有不同的时间戳,每个记录的时间戳将是代理将其附加到日志的有效时间。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62966391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档