Linux 优化参数合集
Nginx 默认 配置文件优化(nginx.conf)nginx-conf

ubuntu26 核心优化
vim /etc/sysctl.d/99-web-server-tuning.conf
# ============================================
# 1. 网络连接队列 (预防连接拒绝)
# ============================================
# 核心参数:控制 Nginx 等服务 accept 队列的最大长度[reference:4]
# Ubuntu 26.04 默认值已提升至 4096[reference:5][reference:6],但对高并发服务器仍建议提高。
net.core.somaxconn = 65535
# SYN 队列最大长度,用于抵御 SYN Flood 攻击或应对突发连接[reference:7]
net.ipv4.tcp_max_syn_backlog = 65535
# 网卡数据包队列大小,应对瞬间流量突发[reference:8]
net.core.netdev_max_backlog = 65535
# ============================================
# 2. TCP 连接与缓冲区 (提升吞吐量)
# ============================================
# TCP 接收/发送缓冲区的最大值 (单位:字节)[reference:9][reference:10]
# 16MB 对于大多数 1Gbps-10Gbps 的网络环境是很好的起点[reference:11][reference:12]。
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# TCP 接收/发送缓冲区 (最小, 默认, 最大)[reference:13]
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# 启用 TCP 窗口缩放,允许在高速网络下使用更大的窗口大小[reference:14][reference:15]
net.ipv4.tcp_window_scaling = 1
# ============================================
# 3. TCP 连接状态管理 (快速回收资源)
# ============================================
# 启用 TIME_WAIT 套接字的快速回收[reference:16][reference:17]
net.ipv4.tcp_fin_timeout = 15
# 允许重用处于 TIME_WAIT 状态的连接[reference:18]
# 注意:此选项在 NAT 环境下可能有问题,纯 Web 服务器可开启。
net.ipv4.tcp_tw_reuse = 1
# 本地向外连接的端口范围,确保有足够端口用于出站连接[reference:19]
net.ipv4.ip_local_port_range = 10240 65535
# ============================================
# 4. TCP KeepAlive (快速清理死连接)
# ============================================
# 对于 Web 服务器,适当缩短 KeepAlive 时间有助于快速释放资源[reference:20]。
net.ipv4.tcp_keepalive_time = 300
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 5
# ============================================
# 5. 内存与文件系统 (提升系统稳定性)
# ============================================
# 系统全局最大文件句柄数,确保 Nginx 能打开足够多的连接[reference:21][reference:22]
fs.file-max = 2097152
# 控制 Swap 使用倾向,值越小越倾向于使用物理内存[reference:23][reference:24]
vm.swappiness = 10
# ============================================
# 6. 拥塞控制算法 (核心网络加速)
# ============================================
# BBR (Bottleneck Bandwidth and RTT) 能显著提升吞吐量并降低延迟[reference:25]。
# 设置队列规则为 fq (Fair Queue)[reference:26][reference:27][reference:28]
net.core.default_qdisc = fq
# 设置 TCP 拥塞控制算法为 bbr[reference:29][reference:30][reference:31]
net.ipv4.tcp_congestion_control = bbr
应用与验证步骤
sudo sysctl –system
验证关键参数:
# 验证 BBR 是否激活
sysctl net.ipv4.tcp_congestion_control
# 应输出: net.ipv4.tcp_congestion_control = bbr
# 验证连接队列长度
sysctl net.core.somaxconn
# 应输出: net.core.somaxconn = 65535
# 验证文件描述符限制
sysctl fs.file-max
# 应输出: fs.file-max = 2097152