Linux 内核参数优化
内容挤牙膏式更新。
Linux内核参数默认是考虑最通用的场景,这明显就无法用于支持高并发访问的Web服务器,所以需要修改内核参数以拥有更高的性能。当然对于不同业务特点的服务器,其内核参数的调整是不同的。这里针对最通用的、支持更多并发请求的TCP网络参数进行简单说明。
查看默认值
在 /proc/sys 目录下寻找对应的文件即可查看默认值。
例如:net.core.somaxconn,通过 cat /proc/sys/net/core/somaxconn
即可查看。
优化方式
首先需要修改 /etc/sysctl.conf。然后执行sysctl -p
使修改生效。
说明
优化项以及优化值选择需要根据实际进行选择。
优化项
优化项 | 含义 | 例子 |
---|---|---|
fs.file-max | 表示进程可以同时打开的最大句柄数,这个参数直接限制最大并发连接数,需根据实际情况配置。 | fs.file-max = 99999 |
net.ipv4.tcp_tw_reuse | 这个参数设置为1,表示允许将TIME_WAIT状态的socket重新用于新的TCP连接,这对于服务器来说很有意义,因为服务器上总会有大量TIME_WAIT状态的连接 | net.ipv4.tcp_tw_reuse = 1 |
net.ipv4.tcp_keepalive_ti |