提升 CentOS 驱动与硬件响应性能的可落地方案
一 基线评估与驱动就绪
二 CPU 与中断优化
sudo cpupower frequency-set -g performance(需安装工具:sudo yum install -y kernel-tools)。三 存储与文件系统优化
echo deadline > /sys/block/sdX/queue/scheduler(机械盘常用 deadline/cfq,SSD/NVMe 可用 noop/mq-deadline 视内核版本而定)。echo 128 > /sys/block/sdX/queue/read_ahead_kb),并合理设置 vm.dirty_ratio / vm.dirty_background_ratio 以平衡写回与延迟(见下文 sysctl 示例)。四 网络栈与驱动参数优化
sudo sysctl -w net.core.rmem_max=16777216、sudo sysctl -w net.core.wmem_max=16777216,提升高带宽/长肥管道场景的吞吐与抗抖动能力。net.core.somaxconn=4096、net.ipv4.tcp_max_syn_backlog=4096,并确保应用层 listen(backlog) 与之匹配,避免握手拥塞与超时。echo 1000 > /sys/class/net/eth0/coalesce/rx_usecs(值需结合延迟/吞吐目标与驱动文档调优)。五 一键可用的 sysctl 与 systemd 调优示例
# 缓冲与队列
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.somaxconn = 4096
net.ipv4.tcp_max_syn_backlog = 4096
# 端口与复用(按需启用)
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.ip_forward = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_intvl = 15
# 可选:缩短邻居表过期,降低 ARP 抖动(视网络而定)
net.ipv4.neigh.default.gc_stale_time = 120
# 降低 swap 倾向,减少抖动
vm.swappiness = 10
# 脏页阈值:高写入负载可适当下调以缩短回收停顿
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5
sudo sysctl -p /etc/sysctl.d/99-centos-performance.confsysctl -a | grep <参数名>sudo cpupower frequency-set -g performance/etc/systemd/system/cpupower-performance.service[Unit]
Description=Set CPU governor to performance
After=sysinit.target
[Service]
Type=oneshot
ExecStart=/usr/bin/cpupower frequency-set -g performance
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload && sudo systemctl enable --now cpupower-performance.service六 验证与风险控制