You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Dapr配置Kafka主题的retention.ms属性

Dapr Kafka Pubsub 配置主题retention.ms 操作指南

场景1:由Dapr自动创建Kafka主题

直接在你的pubsub.yaml配置文件的spec.metadata节点下新增topicRetentionDuration配置项,该参数直接对应Kafka的retention.ms属性,值为时长格式,修改后的完整配置示例如下:

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: pubsub
  namespace: default
spec:
  type: pubsub.kafka
  version: v1
  metadata:
      # Kafka broker连接配置
    - name: brokers
      value: "kafka:9092"
    - name: authRequired
      value: "false"
    - name: initialOffset
      value: "oldest"
    - name: maxMessageBytes
      value: 8192
    # 新增配置:对应Kafka主题retention.ms,示例为保留7天
    - name: topicRetentionDuration
      value: "168h"

配置说明:

  • 时间单位支持 h(小时)、m(分钟)、s(秒),Dapr会自动转换为毫秒值写入Kafka主题配置
  • 该配置仅对Dapr新创建的主题生效,不会修改已存在的主题参数

场景2:Kafka主题已提前创建

如果对应主题已经在Kafka集群中存在,Dapr的组件配置不会覆盖原有主题属性,需要直接通过Kafka官方命令行工具修改:

# 示例:将指定主题retention.ms设置为7天(7*24*3600*1000=604800000毫秒)
./kafka-topics.sh --alter --bootstrap-server kafka:9092 --topic 你的实际主题名称 --config retention.ms=604800000

注意事项

  • 如需为不同主题设置不同的留存时间,Dapr全局组件配置不支持差异化设置,需提前为每个主题单独通过Kafka命令行配置完成后再使用
  • 修改已存在主题配置后立即生效,无需重启Dapr服务或应用

内容的提问来源于stack exchange,提问作者Marko Jovanović

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 01:36:05