ulimit:
1,查看进程允许打开的最大文件句柄数
ulimit -n
2,设置进程能打开的最大文件句柄数
ulimit -n xxx
-H 指定资源的硬限制
-S 指定资源的软限制
hard 代表当前硬限制
soft 代表当前软件限制
unlimited 代表不限制.
3, 文件限制配置文件
/etc/security/limits.conf
4,文件句柄最大数据配置
配置文件:/proc/sys/fs/file-max
这个参数的默认值和内存大小有关系,可以使用公式:file-max 内存大小/ 10k.
4.1 建议将整个系统的文件句柄值至少设置为 65536
4.2 echo "65536" >/proc/sys/fs/file-max
4.3 sysctl -w fs.file-max=65536
4.4 echo "fs.file-max=65536" >>/etc/sysctl.conf
5,文件句柄使用情况配置文件:/proc/sys/fs/file-nr
这三个值分别指:系统已经分配出去的句柄数、已经分配但是还没有使用的句柄数以及系统最大的句柄数(和file-max一样)。
6,查看进程打开的文件句柄数
lsof:列出当前系统打开文件的工具。
一、修改文件句柄数限制,使用/etc/security/limits.conf文件
添加一下内容,表示paas用户可以打开文件数为65535
paas soft nofile 65535
paas hard nofile 65535
1.可以不指定paas用户,直接使用*,表示所有用户
2.可以不指定soft hard ,直接使用-表示所有
3.nofile表示可以打开的文件句柄数,nproc表示可以打开的进程数(包括线程,线程属于轻量级进程)
二、修改用户可以打开的进程数,使用/etc/security/limits.conf
添加以下内容:
对于普通用户,优先级更高的是
/etc/security/limits.d/20-nproc.conf(低版本系统,如centos6)
/etc/security/limits.d/90-nproc.conf(高版本系统,如centos7)
linux修改句柄数不生效是整个系统对句柄数进行限制了。linux在整个系统层面和单个进程两个层面对打开的文件句柄进行限制。通过ulimit-n可以对该值进行临时修改。永久生效,需要修改配置文件etc、security、limits.conf,softnofile10000、hardnofile10000追加到配置文件中。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)