优化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调度器,减少磁盘调度延迟。监控与维护