【问题标题】:Kafka log compaction callbackKafka 日志压缩回调
【发布时间】:2022-01-22 04:41:32
【问题描述】:

我正在使用 Kafka 日志压缩器,我想知道当 Kafka 代理执行我的主题的日志压缩时,是否有任何回调函数可以作为消费者调用。

到目前为止,我看不到任何回调,所以我想知道检测日志压缩发生的标准策略是什么。

问候

【问题讨论】:

    标签: java apache-kafka kafka-consumer-api apache-kafka-streams


    【解决方案1】:

    客户端本身与此类事件的代理没有通信。过去,我们使用 Splunk 从 LogCleaner 进程日志中捕获压缩事件,如果出于任何原因需要,我们可以基于此生成 webhook 事件(我们仅将其用于管理调试,客户端从不需要它)

    【讨论】:

    • 所以没有回调或官方方法可以知道何时发生这种情况。换句话说,最好不要使用 log compactor 作为一种可以确定的机制。
    • 可以用,但是客户不知道。 1) 没有延迟的消费者正在从活动日志段中读取,并且活动段永远不会被压缩 2) 压缩主题用于通过从主题的最开始读取来构建 KTables 或 Hashmaps,其中较旧的段已经被压缩,并且具有相同键的较新事件会覆盖旧事件。因此,我想不出一个用例,知道是否发生了压缩对客户端有用,除非您要维护多个数据结构,并试图从中删除信息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-12
    • 2016-06-16
    • 2016-02-08
    • 1970-01-01
    • 2020-01-05
    • 2019-05-14
    相关资源
    最近更新 更多