服务器默认的文件描述符是1024个(linux),查看方式是执行ulimit -n命令。
对于高负载高连接的服务器来说,1024远远不够,至于修改方式,这里就不在赘述了,随便上网一搜就大把大把的文章介绍。
蚊子这篇要说的是如何查看一个进程能打开的最大文件描述符。
不知到各位SA们有没有过这种困惑,系统的文件描述符,无论是软调整过了,还是修改配置文件硬调整过了,可对于应用程序来讲,是不是真正生效了呢?
这里还是有办法知道的,方法就是
cat /proc/PID/limists | grep “Max open files”
举例来说吧。
在文件的服务器上运行着
18452 ? Ss 0:00 nginx: master process /usr/local/nginx/sbin/nginx
28952 ? S 0:01 nginx: worker process
28954 ? S 0:01 nginx: worker process
可以看到nginx前面的进程id,下面将PID替换成实际的进程id来看看结果。
# cat /proc/28952/limits |grep "Max open files"
Max open files 65536 65536 files
由此得知,nginx的28952这个进程可以最多打开65536个文件。
通过以上方法,就能知道实际对于文件描述符的修改是否生效了。是不是很简单。
转载于:https://blog.51cto.com/fantefei/909320