以下是一些CentOS下Kafka配置参数的选择建议:
broker.id:每个broker唯一标识,可设为0、1等整数。listeners和advertised.listeners:设为PLAINTEXT://服务器IP或主机名:端口,如PLAINTEXT://192.168.1.100:9092。log.dirs:指定多个日志存储目录,如/data/kafka/logs1,/data/kafka/logs2,提高并行读写。num.partitions:一般设置为消费者线程数或CPU核数的整数倍,提高并行处理能力。default.replication.factor:通常设为3,保证数据可靠性。min.insync.replicas:设置为2,确保消息写入的可靠性。kafka-server-start.sh中设置KAFKA_HEAP_OPTS,如-Xms8G -Xmx8G -XX:UseG1GC。bootstrap.servers:设置为Kafka集群地址,如localhost:9092。key.serializer和value.serializer:常用org.apache.kafka.common.serialization.StringSerializer。acks:根据可靠性需求选择,1为默认,all最可靠但性能低。batch.size:增大可提高吞吐量,如设为16384或更大。linger.ms:适当增大可提高批量发送效率,如设为10。compression.type:可选用snappy、lz4等压缩算法。bootstrap.servers:同生产者。key.deserializer和value.deserializer:对应生产者的序列化器。fetch.min.bytes:增大可减少网络交互,如设为1024。fetch.max.wait.ms:与fetch.min.bytes配合,设为500。max.poll.records:根据处理能力设置,如500。