设为首页 - 加入收藏 湛江站长网 (http://www.sieduca.com)- 中小站长们必上的网站 - 聚焦湛江站长前沿资讯!
热搜: 网站 站长之家 什么 平台
当前位置: 首页 > 业界 > 正文

Linux服务器性能的重要指标:打开文件数的限制

发布时间:2018-11-15 12:32 所属栏目:[业界] 来源:编程无界
导读:文件是Linux系统中的一切事物的存在形式,计算机中的数据和硬件都是通过文件的形式进行管理,Linux的文件主要有普通文件、文件夹、设备文件、链接文件、管道文件、套接字文件(数据通信的接口)等类型,Linux 中的各种事物比如像文档、文件夹、键盘、监视器

文件是Linux系统中的一切事物的存在形式,计算机中的数据和硬件都是通过文件的形式进行管理,Linux的文件主要有普通文件、文件夹、设备文件、链接文件、管道文件、套接字文件(数据通信的接口)等类型,Linux 中的各种事物比如像文档、文件夹、键盘、监视器、硬盘、可移动媒体设备、打印机、调制解调器、虚拟终端等等都是定义在文件系统空间下的字节流。

Linux服务器性能的重要指标:打开文件数的限制

因此在Linux系统上的web程序,在进行TCP连接时,系统为每个TCP连接创建一个socket句柄,而每个句柄也是一个文件句柄,所以web程序对文件的操作情况,是影响到服务器性能的重要指标,像网站在高流量高并发的场景下出现"Too many open files"的异常就是因为打开的文件数超过限制,而程序中对资源(包括图片、音视频资源)、网页、以及接口的请求在Linux系统里的表现为对文件的访问,如果打开文件数超出了系统限制(系统级和用户级)的数量,就会拒绝接下来的文件访问

当前用户级的文件数限制,可以通过 ulimit -n 来查看,如图:

Linux服务器性能的重要指标:打开文件数的限制

而系统级别的文件数限制,则通过sysctl -a来查看,如下图:

Linux服务器性能的重要指标:打开文件数的限制

一般系统最大文件数会根据硬件资源计算出来的,如果强行需要修改最大打开文件数可以通过ulimit -n 10240来修改,当这种方式只对当前进程有效,如果需要永久有效则需要修改/etc/security/limits.conf(重启系统生效),如下图:

Linux服务器性能的重要指标:打开文件数的限制

其中:

root :指定用户,,如对所有用户,则写 *

soft:软限制

hard:硬件限制

nofile 是代表最大文件打开数

除此之外,下面是一些打开文件数操作相关的指令,仅供参考:

1、查看所有进程的文件打开数:

  1. lsof |wc -l 

Linux服务器性能的重要指标:打开文件数的限制

2、查看某个进程打开的文件数:

  1. lsof -p pid |wc -l 

Linux服务器性能的重要指标:打开文件数的限制

3、查看系统中各个进程分别打开了多少句柄数:

  1. lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more 


Linux服务器性能的重要指标:打开文件数的限制

【编辑推荐】

  1. 详细的Linux服务器状态、性能相关命令
  2. 高可用性指标说明及容灾的几个衡量指标
  3. Linux-利用iptables限制多个IP访问你的服务器
  4. H3C交换机和Linux服务器网卡绑定模式(bond)对接经典配置
  5. 一次Linux服务器双网卡网络问题的排查过程回溯
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0

【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

网友评论
推荐文章
金亚洲投注