UBUNTU 下 APACHE2 Too many open files: Error retrieving pid file /var/run/apache2.pid

cat /proc/sys/fs/file-max 系统可打开的最大文件个数

ulimit -n 当前系统限制的个数

ulimit -n 10240 调整当前系统的限制

修改/etc/sysctl.conf, 加入

net.ipv4.ip_local_port_range = 1024 65000
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
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 = 30
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_sack = 1
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_keepalive_time= 30
net.ipv4.tcp_max_tw_buckets= 6000
net.core.somaxconn = 65535
fs.file-max = 1024000

 
vim /etc/security/limits.conf 进行设置
修改/etc/security/limits.conf  ,在最下方添加
* soft nofile 65536
* hard nofile 65536
重启
 
sysctl -p 无需重启 立刻使生效
 
apache 支持监听8180个端口 默认的。 不知道增加还得肿么搞。
 
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

netstat -antup | wc -l
netstat -antup | grep 'TIME_WAIT' | wc -l
netstat -antup | grep 'SYN_RECV' | wc -l

原文地址:https://www.cnblogs.com/qunshu/p/3579621.html