由于linux内核的限制,files open too many是一个常见的问题
修改/etc/sysctl.conf文件
以上参数存在/proc/sys/下的相应目录
[quote]目前,大多的 ip_conntrack_* 已被 nf_conntrack_* 取代,很多 ip_conntrack_* 仅仅是个 alias,原先的 ip_conntrack 的 /proc/sys/net/ipv4/netfilter/ 依然存在,但是新的 nf_conntrack 在 /proc/sys/net/netfilter/ 中[/quote]
[quote]file-max是设置 系统所有进程一共可以打开的文件数量
/proc/sys/fs/file-max
[/quote]
[quote]
ip_conntrack 是Linux NAT一个跟踪连接条目的模块记录着允许的跟踪连接条目ip_conntrack 模块会记录 tcp 通讯协议的 established connection 记录, 而且预设 timeout 时间长达五天 (432,000 秒).所以局域网中当有人使用p2p类的软件就很容易使ip_conntrack达到最大值...也由此造成。
echo "3600" > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_established
[/quote]
/etc/security/limits.conf
[quote]ulimit作用:即设置当前shell以及由它启动的进程的资源限制[/quote]
[quote]
1.验证某个进程的限制
# ps -ef |grep nginx
将得出的PID XXX带入下面
#cat /proc/XXX/limits
查看Max open files 那一行
2.验证系统级别的限制
# ulimit -n
3.验证内核级别的限制
#cat /proc/sys/fs/file-max
[/quote]
修改/etc/sysctl.conf文件
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.ip_local_port_range = 1024 65000
fs.file-max=655360
net.netfilter.nf_conntrack_max = 798641
以上参数存在/proc/sys/下的相应目录
[quote]目前,大多的 ip_conntrack_* 已被 nf_conntrack_* 取代,很多 ip_conntrack_* 仅仅是个 alias,原先的 ip_conntrack 的 /proc/sys/net/ipv4/netfilter/ 依然存在,但是新的 nf_conntrack 在 /proc/sys/net/netfilter/ 中[/quote]
[quote]file-max是设置 系统所有进程一共可以打开的文件数量
/proc/sys/fs/file-max
[/quote]
[quote]
ip_conntrack 是Linux NAT一个跟踪连接条目的模块记录着允许的跟踪连接条目ip_conntrack 模块会记录 tcp 通讯协议的 established connection 记录, 而且预设 timeout 时间长达五天 (432,000 秒).所以局域网中当有人使用p2p类的软件就很容易使ip_conntrack达到最大值...也由此造成。
echo "3600" > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_established
[/quote]
/etc/security/limits.conf
* soft nofile 1000000
* hard nofile 1000000
[quote]ulimit作用:即设置当前shell以及由它启动的进程的资源限制[/quote]
[quote]
1.验证某个进程的限制
# ps -ef |grep nginx
将得出的PID XXX带入下面
#cat /proc/XXX/limits
查看Max open files 那一行
2.验证系统级别的限制
# ulimit -n
3.验证内核级别的限制
#cat /proc/sys/fs/file-max
[/quote]