Linux性能优化核心是合理调优内核参数与资源管理:网络侧扩端口范围、启用TIME_WAIT复用、缩短连接超时;内存侧降低swappiness、调整缓存压力与严格内存分配;CPU侧优化调度延迟、关闭NUMA平衡并绑定关键进程;参数需sysctl动态测试后持久化配置。

Linux系统性能优化的关键在于合理调整内核参数和高效管理资源,而不是盲目增加硬件或堆砌工具。核心思路是:让内核行为更贴合实际负载,同时避免资源争用与浪费。
关键内核参数调优(net.ipv4)
网络子系统是多数服务的瓶颈所在,尤其在高并发Web、API或代理场景中:
- net.ipv4.ip_local_port_range:默认可能只有32768–65535(约3.2万个端口),短连接密集时易耗尽。建议设为1024–65535,扩大可用临时端口范围
- net.ipv4.tcp_tw_reuse:设为1,允许TIME_WAIT状态的socket在安全条件下被快速复用(需配合tcp_timestamps=1)
- net.ipv4.tcp_fin_timeout:从默认60秒降至30或15,加速回收FIN_WAIT_2状态连接
- net.ipv4.tcp_max_syn_backlog:根据并发SYN请求数调高(如设为65536),防止SYN队列溢出丢包
内存与OOM管理策略
避免因内存不足触发OOM Killer误杀关键进程,同时提升缓存效率:
- vm.swappiness:对SSD服务器建议设为1–10(而非默认60),减少不必要swap换入换出;纯内存数据库类服务可设为0(禁用swap,但需确保内存充足)
- vm.vfs_cache_pressure:默认100,若系统频繁访问文件路径(如PHP、Python应用),可降至50,延长dentry/inode缓存寿命
- vm.overcommit_memory:生产环境推荐设为2,启用严格内存分配检查(配合vm.overcommit_ratio设置合理上限),防止单个进程耗尽全部内存
CPU与调度器轻量优化
适用于容器化部署、微服务或延迟敏感型应用:
- kernel.sched_latency_ns 和 kernel.sched_min_granularity_ns:在CPU核心数较少(如4核以下)或追求低延迟时,可适当调小(如设为10000000和1000000),提升调度响应速度
- kernel.numa_balancing:虚拟机或非NUMA物理机建议关闭(设为0),避免跨节点内存迁移开销
- 对关键进程使用chrt -r 10或taskset -c 0-1绑定CPU与实时调度策略,隔离干扰
持久化与生效技巧
参数修改后需兼顾即时生效与重启可靠:
- 用sysctl -w key=value测试效果,确认无异常再写入配置
- 永久生效:追加到/etc/sysctl.conf或新建/etc/sysctl.d/99-custom.conf,然后运行sysctl --system
- 容器环境注意:宿主机参数影响容器网络/内存行为,但容器内无法直接修改host-level参数;需通过--sysctl启动参数或pod securityContext传递(K8s)










