优化Ubuntu上的Kafka性能可从硬件、配置、系统参数、监控等多方面入手,具体如下:
硬件优化
Kafka配置优化
batch.size(如32KB~1MB)和linger.ms(如5~10ms)提升吞吐量。log.segment.bytes(如1GB)和log.retention.hours控制日志保留策略。compression.type=gzip)减少存储和传输压力。num.network.threads设为CPU核数+1,num.io.threads设为CPU核数×2。socket.send.buffer.bytes和socket.receive.buffer.bytes优化网络传输。JVM调优
-Xms和-Xmx,建议设置为相同值,如8GB),避免动态扩容开销。-XX:+UseG1GC),减少GC停顿。-XX:MetaspaceSize和-XX:MaxMetaspaceSize,如256MB)。操作系统优化
ulimit -n 65535)。vm.swappiness=10(减少交换分区使用)。vm.dirty_background_ratio=5(控制脏页刷新时机)。deadline或noop I/O调度器,减少磁盘调度延迟。监控与维护