Java-打开文件数过多错误

Linux设置最大打开文件数(句柄)

## 在 /etc/security/limits.conf 文件的末尾加入以下内容
### nofile为用户能够打开的文件数
sudo vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536

## 在 /etc/security/limits.d/20-nproc.conf 文件的末尾加入以下内容
sudo vim /etc/security/limits.d/20-nproc.conf
* soft nofile 65536
* hard nofile 65536

## 重新用户登录后生效
## 使用以下命令查看具体值是否已经变化生效
ulimit -a
...
open files                      (-n) 65536
...
max user processes              (-u) 131072
...

查看进程已经打开的文件数

# 查看文件已经打开的句柄
lsof -p pid

# 查看文件已经打开的句柄数
lsof -p pid | wc -l

查看进程当前最大能够打开的文件数

cat /proc/pid/limits 

...
Max open files            4096                 4096                 files     
...

通过systemctl启动的服务的最大文件数设置

[Unit]
Description=onos
After=mysqld.service

[Service]
Type=forking
LimitNOFILE=65536
ExecStart=/home/data/onos/start.sh
ExecStop=/home/data/onos/stop.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target

关键是LimitNOFILE=65536将该服务能够打开的最大文件数设置为了65536

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值