Linux 系统参数优化


修改系统所有进程可打开的文件数量

sysctl -w fs.file-max=2097152
sysctl -w fs.nr_open=2097152

> vi /etc/sysctl.conf
fs.file-max = 2097152
fs.nr_open = 2097152
设置服务最大文件句柄数

vim /etc/systemd/system.conf 
DefaultLimitNOFILE=1048576
持久化设置允许用户/进程打开文件句柄数:

ulimit -n 1048576

> vim /etc/security/limits.conf
* soft nofile 1048576
* hard nofile 1048576
可用'*'号表示修改所有用户的限制;soft或hard指定要修改软限制还是硬限制;10240则指定了想要修改的新的限制值,即最大打开文件数(请注意软限制值要小于或等于硬限制)。

TCP 协议栈网络参数

> vi /etc/sysctl.conf

### backlog - Socket 监听队列长度:
net.core.somaxconn=32768
net.ipv4.tcp_max_syn_backlog=16384
net.core.netdev_max_backlog=16384

## 可用知名端口范围:
net.ipv4.ip_local_port_range='1000 65535'

## TCP Socket 读写 Buffer 设置:
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.core.optmem_max=16777216

#sysctl -w net.ipv4.tcp_mem='16777216 16777216 16777216'
net.ipv4.tcp_rmem='1024 4096 16777216'
net.ipv4.tcp_wmem='1024 4096 16777216'

## TCP 连接追踪设置:
net.nf_conntrack_max=1000000
net.netfilter.nf_conntrack_max=1000000
net.netfilter.nf_conntrack_tcp_timeout_time_wait=30

## FIN-WAIT-2 Socket 超时设置:
net.ipv4.tcp_fin_timeout = 15
## TIME-WAIT Socket 最大数量、回收与重用设置:
net.ipv4.tcp_max_tw_buckets=1048576

# 注意: 不建议开启該设置,NAT模式下可能引起连接RST
# net.ipv4.tcp_tw_recycle = 1
# net.ipv4.tcp_tw_reuse = 1
原文地址:https://www.cnblogs.com/xxsl/p/11003422.html