1.操作系统的最大打开文件数(Max Open Files)
查看
cat /proc/sys/fs/file-max如果没有达到百万级别,那么修改文件/etc/sysctl.conf的内容(没有就添加)
fs.file-max=1002000
由于系统的限制是全局,也就是对所有的进程打开的文件数的总和,所以,这里设置的大一些,留一些给其他进程使用。
然后,更新系统服务# Linux sudo sysctl -p # BSD sudo /etc/rc.d/sysctl reload
2.进程对最大打开文件数的限制
除了系统的限制还有单个进程对打开文件数的限制,查看一下:
ulimit -n如果没有达到百万级,修改文件 /etc/security/limits.conf,添加
mn hard nofile 1020000 mn soft nofile 1020000
第一列表示用户。
3.调整TCP的滑动窗大小
查看
cat /proc/sys/net/ipv4/tcp_wmem cat /proc/sys/net/ipv4/tcp_rmem修改文件/etc/sysctl.conf
net.ipv4.tcp_wmem = 2048 2048 16348 net.ipv4.tcp_rmem = 2048 2048 16348
修改以上三个参数系统应该很容易达到百万的连接,但是要处理百万的连接,还需要对业务进行优化。内核参数的调整只是一开头而已。