本文主要是介绍Kafka服务器配置的offsets.retention.minutes log.retention.minutes默认参数配置导致offset失效的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
关于kafka 0.10.0.0 的默认参数 offsets.retention.minutes & log.retention.minutes 的默认值问题。
默认参数前者是7天,后者是24小时。会导致数据虽然保存但offset失效导致客户端数据重复消费的问题。
0.10.0.0官方的参数说明:http://kafka.apache.org/0100/documentation.html#log
offsets.retention.minutes
Log retention window in minutes for offsets topic
Kafka Server端保存的offset的过期时间。默认值1440(1440分钟也就是24小时),应该调整为与log.retention.hours一致,即10080。
log.retention.hours & log.retention.minutes
这两个参数都是用来设置删除日志的,无论哪个属性已经溢出,都会进行文件的删除。
log.retention.hours:
The number of hours to keep a log file before deleting it (in hours), tertiary to log.retention.ms property
参数int类型,默认值:168 (168小时也就是7天)。
log.retention.minutes:
The number of minutes to keep a log file before deleting it (in minutes), secondary to log.retention.ms property. If not set, the value in log.retention.hours is used
参数int类型,默认值:null。
该问题相关的问题单和解决方案:默认值调成一致(7天):
类似相关问题单很多:
https://cwiki.apache.org/confluence/display/KAFKA/KIP-186%3A+Increase+offsets+retention+default+to+7+days
https://github.com/apache/kafka/pull/4648/files
KAFKA-3806: Increase offsets retention default to 7 days (KIP-186) #4648
这篇关于Kafka服务器配置的offsets.retention.minutes log.retention.minutes默认参数配置导致offset失效的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!