网络参数调优

目的

对于不同的操作系统,通过在OS层面调整网络参数的配置,可以有效提升服务器性能。

方法

Linux参数

参数含义

默认值

建议值

修改命令

tcp_max_syn_backlog

tcp_max_syn_backlog是指定所能接受SYN同步包的最大客户端数量。

2048

建议修改成“8192”

echo 8192 > /proc/sys/net/ipv4/tcp_max_syn_backlog
echo 1024 > /proc/sys/net/core/somaxconn
echo 16777216 > /proc/sys/net/core/rmem_max
echo 16777216 > /proc/sys/net/core/wmem_max
echo 4096 87380 16777216> /proc/sys/net/ipv4/tcp_rmem
echo 4096 65536 16777216> /proc/sys/net/ipv4/tcp_wmem
echo 360000 > /proc/sys/net/ipv4/tcp_max_tw_buckets

net.core.somaxconn

服务端所能accept即处理数据的最大客户端数量,即完成连接上限。

128

建议修改成“1024”

net.core.rmem_max

接收套接字缓冲区大小的最大值。单位为字节。

229376

建议修改成“16777216”

net.core.wmem_max

发送套接字缓冲区大小的最大值。单位为字节。

229376

建议修改成“16777216”

net.ipv4.tcp_rmem

配置读缓冲的大小,共三个值,第一个是这个读缓冲的最小值,第三个是最大值,中间的是默认值。

4096 87380 6291456

建议修改成“4096 87380 16777216”

net.ipv4.tcp_wmem

配置写缓冲的大小,共三个值,第一个是这个写缓冲的最小值,第三个是最大值,中间的是默认值。

4096 16384 4194304

建议修改成“4096 65536 16777216”

net.ipv4.max_tw_buckets

表示系统同时保持TIME_WAIT套接字的最大数量。

2048

建议修改成“360000”