ulimit -n和-u可以查看linux的最大进程数和最大文件打开数。
为了优化linux性能,可能需要修改这个最大值。
临时修改的话ulimit -n 204800就可以了,重启后失效。
vim /etc/security/limits.conf
//在文件末尾添加如下四行
* soft nofile 204800
* hard nofile 204800
* soft nproc 204800
* hard nproc 204800
* 代表针对所有用户
noproc 是代表最大进程数
nofile 是代表最大文件打开数
如果客户端提示“Cannot assign requested address”
是由于linux分配的客户端连接端口用尽,无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放,而是处于TIME_WAIT状态,默认等待60s后才释放。
--调低time_wait状态端口等待时间:
sysctl -w net.ipv4.tcp_fin_timeout=30
/proc/sys/net/ipv4/tcp_tw_resue
,sysctl -w net.ipv4.tcp_timestamps=1
sysctl -w net.ipv4.tcp_tw_recycle=1
增加可用端口:
sysctl -a |grep port_range
net.ipv4.ip_local_port_range = 50000 65000
-----意味着50000~65000端口可用
修改参数:
$ vim /etc/sysctl.conf
net.ipv4.ip_local_port_range = 10000 65000
-----意味着10000~65000端口可用
改完后,执行命令“sysctl -p”使参数生效,不需要reboot。
原文:https://www.cnblogs.com/werben/p/14415880.html