优化 CentOS 上的 Kafka 存储配置可以通过以下几个方面来实现:
server.properties 配置log.dirs:指定日志文件的存储目录,可以设置多个目录以提高写入性能。log.dirs=/data/kafka-logs1,/data/kafka-logs2
num.partitions:增加分区数可以提高并行处理能力,但也会增加每个分区的大小。num.partitions=16
default.replication.factor:设置默认的副本因子,通常设置为 3 以保证数据冗余。default.replication.factor=3
min.insync.replicas:设置最小同步副本数,确保数据不会丢失。min.insync.replicas=2
log.retention.hours:设置日志保留时间,根据业务需求调整。log.retention.hours=168
log.segment.bytes:设置日志段的大小,较大的日志段可以减少磁盘 I/O。log.segment.bytes=1073741824
log.retention.check.interval.ms:设置日志保留检查间隔,减少不必要的检查。log.retention.check.interval.ms=300000
export KAFKA_HEAP_OPTS="-Xmx8G -Xms8G"
export KAFKA_HEAP_OPTS="$KAFKA_HEAP_OPTS -XX:+UseG1GC"
ulimit -n 65535
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.ip_local_port_range = 1024 65535
compression.type=gzip
通过以上优化措施,可以显著提高 CentOS 上 Kafka 的存储性能和稳定性。根据具体的业务需求和硬件资源,调整相应的配置参数。