要永久更改文件描述符限制,请修改/etc/security/limits.conf文件,添加以下内容:
* soft nofile 100000
* hard nofile 100000
修改内核参数:编辑/etc/sysctl.conf文件,添加以下内容:
# 设置系统最大文件描述符数量
fs.file-max = 1000000
# 设置接收数据包队列的最大长度
net.core.netdev_max_backlog = 262144
# 设置接收套接字缓冲区大小的最大值(字节)
net.core.rmem_max = 16777216
# 设置发送套接字缓冲区大小的最大值(字节)
net.core.wmem_max = 16777216
# 设置系统允许的最大监听队列长度
net.core.somaxconn = 65535
# 开启SYN cookies以防止SYN洪水攻击
net.ipv4.tcp_syncookies = 1
# 设置系统允许的最大SYN连接队列长度
net.ipv4.tcp_max_syn_backlog = 262144
# 设置系统允许的最大timewait套接字数量
net.ipv4.tcp_max_tw_buckets = 2000000
# 开启timewait套接字重用功能,以提高系统在高并发场景下的性能
net.ipv4.tcp_tw_reuse = 1
# 设置TCP连接FIN状态超时时间(秒)
net.ipv4.tcp_fin_timeout = 10
# 设置TCP连接keepalive探测包发送时间间隔(秒)
net.ipv4.tcp_keepalive_time = 1200
# 设置系统允许的本地端口范围
net.ipv4.ip_local_port_range = 1024 65535
改完保存并重启服务器生效