限制kafka中特定主题的日志大小

Posted

技术标签:

【中文标题】限制kafka中特定主题的日志大小【英文标题】:Limiting log size for a particular topic in kafka 【发布时间】:2016-12-11 17:24:17 【问题描述】:

我正在尝试限制 kafka 主题的日志大小。

我按照kafka文档(Kafka 0.10.0 Documentation)设置了这两个属性cleanup.policy=delete,retention.bytes=1。

--> 主题描述命令的结果

./kafka-topics.sh --describe --zookeeper localhost:2181 --topic kafkatest1 主题:kafkatest1 PartitionCount:3 复制因子:1 配置:cleanup.policy=delete,retention.bytes=1

我希望我写给主题“kafkatest1”的任何消息都会被自动删除,因为我已将retention.bytes 设置为1。 但消息不断被附加。

是否需要任何额外的配置来实现这一点?

【问题讨论】:

【参考方案1】:

请检查您的log.segment.bytes(默认为 1073741824 字节)。据我所知,滚动日志段时将考虑保留。

您能解释一下您想要实现的目标吗?为什么要发消息删除它?

【讨论】:

我尝试将 'segment.bytes' 更改为 15 个字节。但仍然没有成功。我试图限制每个主题的大小,以便可以在多个用户之间共享同一个 kafka 集群。我保留了“retention.bytes=1”,以便可以使用控制台使用者本身验证此功能。 那有什么影响吗?

以上是关于限制kafka中特定主题的日志大小的主要内容,如果未能解决你的问题,请参考以下文章

动态限制 flink kafka 源

如果一个受限制,如何在kafka中的剩余分区上应用循环法

Kafka配额违规日志

在 kafka 控制台上无法输入大小超过 4095 个字符的消息

使用 Spark Streaming 时限制 Kafka 批量大小

如何使用 librdkafka 设置 Kafka 消息的最大大小