【问题标题】:What is the kafka message "timestamp" represents?kafka消息“时间戳”代表什么?
【发布时间】:2021-08-17 21:42:53
【问题描述】:
  1. 是以纪元毫秒为单位还是以秒为单位?
  2. 它是否代表消息到达 kafka 的时间?还是由 kafka-client-producer 发送的?或者是什么时候吃的?
  3. 如何知道我的 VM 与 Confluent Cloud 中的 Kafka VM 之间的时钟时间差?

【问题讨论】:

    标签: apache-kafka confluent-cloud


    【解决方案1】:

    在大多数 Kafka 客户端中,时间戳是在生成生产者记录时设置的,在序列化之前,通常是 epoch ms,但这在所有客户端中并不一致。例如,我注意到 python 只使用了几秒钟

    您不需要关心 Confluent Cloud 中的时钟偏差

    【讨论】:

    • 1.我正在使用 KafkaJs(节点库),它给了我纳秒。也许它与用于生成这些 kafka 消息的 C# 库有关。 2.我需要计算(在普罗米修斯中)从生产到消费需要多少时间,所以我正在计算:现在 - 生产时间 ===>> 现在 - kafkaMsg.timestamp。你有更好的选择吗?
    • 所有客户端都不一致,因此您必须查看源代码,或者如果可能的话,自己设置记录时间戳。生产和消费之间的时间不会取决于经纪人的时间,所以只需记下生产者记录的时区+时间戳并从消费者的当前时间中减去
    • 但是如果代理和我的虚拟机没有同步,我可能会收到负面结果
    • 为什么?代理不修改记录时间戳
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-14
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 2017-11-26
    • 1970-01-01
    • 2020-12-21
    相关资源
    最近更新 更多