我阅读了 pulsar 文档和一些关于 pulsar 如何处理非活动主题的 stackoverflow。pulsar 会在主题内的所有消息消费完并超过保留期后,自动删除不活跃的主题。我有一个场景,脉冲星主题用于从代理收集日志,并且该主题是预先创建的,并且必须保留(或至少一年),以便代理可以知道它并直接发送数据。来自这篇文章:如何避免在 Apache Pulsar 中自动删除非活动主题,有两种不同的方法来保留非活动主题
- 设置保留策略将数据保留至少 X 小时(直到 Y GB)
pulsar-admin namespaces set-retention my-tenant/my-ns \
--size 1T \
--time -1
缺点是我不想将消息保留一年,这对于日志收集系统来说是不可能的,即使有可能也会付出巨大的代价 2. 在 conf/broker.conf 中手动设置 brokerDeleteInactiveTopicsEnabled=false 可以禁用删除非活动主题也是。这将永远保持不活跃的主题。很难跟踪这么多主题(预计数百万级别)并手动清理它们。对于动物园管理员来说,永远保留所有这些元数据可能会成为一个问题。
任何建议表示赞赏