Linux下高并发socket最大连接数所受的各种限制

第一步,修改/etc/security/limits.conf文件,在文件中添加如下行

* soft nofile 1000000
* hard nofile 1000000

第二步,修改/etc/pam.d/login文件,在文件中添加如下行

session required /lib/security/pam_limits.so

第三步,查看Linux系统级的最大打开文件数限制,使用如下命令

cat /proc/sys/fs/file-max
echo 1000000 > /proc/sys/fs/file-max

第四步,修改/etc/sysctl.conf文件,在文件中添加如下行

net.ipv4.ip_local_port_range = 1024 65536
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_window_scaling = 0
net.ipv4.tcp_sack = 0
net.core.netdev_max_backlog = 30000
net.ipv4.tcp_no_metrics_save=1
net.core.somaxconn = 262144
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2

然后执行如下命令:

sysctl -p

最后执行如下命令:

echo ulimit -HSn 65536 >> /etc/rc.local
echo ulimit -HSn 65536 >>/root/.bash_profile
echo "1024 65535"> /proc/sys/net/ipv4/ip_local_port_range
ulimit -HSn 65536

简单的总结了一下,就到这儿吧!

此条目发表在 好文推荐, 网站架构 分类目录。将固定链接加入收藏夹。

评论功能已关闭。