【问题标题】:Apache Kafka: how to configure message buffering properlyApache Kafka:如何正确配置消息缓冲
【发布时间】:2020-11-21 05:04:07
【问题描述】:

我运行的系统包括一个 InfluxDB、一个 Kafka 代理和数据源(传感器),用于生成时间序列数据。代理的目的是保护数据库免受入站事件过载的影响,并作为与格式无关的平台来摄取数据。数据通过 Apache Camel 路由从 Kafka 传输到 InfluxDB。 我想使用 Kafka 作为中间消息缓冲区,以防 Camel 路由崩溃或变得不可用——这是系统中最常见的错误。到目前为止,我还没有实现以一种方式配置 Kafka,即入站消息仍然可供以后使用。 如何正确配置?

【问题讨论】:

    标签: apache-kafka


    【解决方案1】:

    消息将根据Topic Configurations 中所述的保留 策略(您可以在时间或字节大小限制之间进行选择)保留在 Kafka 主题中。与

    cleanup.policy=delete
    Retention.ms=-1
    

    Kafka 主题中的消息将永远不会被删除。

    然后,如果您选择新的消费者组或重置现有消费者组的偏移量,您的骆驼消费者将能够重新读取所有消息(偏移量)。否则,您的骆驼消费者可能会自动提交消息(检查相应的消费者配置),并且无法再次为同一消费者组重新读取偏移量。

    要限制骆驼消费者的消费率,您可以调整maxPollRecordsfetchMaxBytesdocs 中描述的配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-23
      • 1970-01-01
      • 1970-01-01
      • 2012-03-06
      • 1970-01-01
      • 2016-09-29
      • 2020-03-08
      • 1970-01-01
      相关资源
      最近更新 更多