文件是Linux系统中的一切事物的存在形式,计算机中的数据和硬件都是通过文件的形式进行管理,Linux的文件主要有普通文件、文件夹、设备文件、链接文件、管道文件、套接字文件(数据通信的接口)等类型,Linux 中的各种事物比如像文档、文件夹、键盘、监视器、硬盘、可移动媒体设备、打印机、调制解调器、虚拟终端等等都是定义在文件系统空间下的字节流。
因此在Linux系统上的web程序,在进行TCP连接时,系统为每个TCP连接创建一个socket句柄,而每个句柄也是一个文件句柄,所以web程序对文件的操作情况,是影响到服务器性能的重要指标,像网站在高流量高并发的场景下出现"Too many open files"的异常就是因为打开的文件数超过限制,而程序中对资源(包括图片、音视频资源)、网页、以及接口的请求在Linux系统里的表现为对文件的访问,如果打开文件数超出了系统限制(系统级和用户级)的数量,就会拒绝接下来的文件访问
- 1
- 2
当前用户级的文件数限制,可以通过 ulimit -n 来查看,如图:
而系统级别的文件数限制,则通过sysctl -a来查看,如下图:
一般系统最大文件数会根据硬件资源计算出来的,如果强行需要修改最大打开文件数可以通过ulimit -n 10240来修改,当这种方式只对当前进程有效,如果需要永久有效则需要修改/etc/security/limits.conf(重启系统生效),如下图:
其中:
root :指定用户,如对所有用户,则写 *
soft:软限制
hard:硬件限制
nofile 是代表最大文件打开数
除此之外,下面是一些打开文件数操作相关的指令,仅供参考:
1、查看所有进程的文件打开数:
lsof |wc -l
2、查看某个进程打开的文件数:
lsof -p pid |wc -l
3、查看系统中各个进程分别打开了多少句柄数:
lsof -n|awk ‘{print $2}’|sort|uniq -c|sort -nr|more
觉得本文对你有帮助?请分享给更多人
关注「编程无界」,提升装逼技能
相关推荐
熟悉: Linux文件类型 【能力目标】 能分辨文件的种类 【思政目标】 培养学生职业素养和工匠精神。 1.Linux文件类型 Linux的文件类型大致可分为: 普通文件:用于存放数据、程序等信息的文件。 目录文件:是由文件...
java上传文件到linux服务器,操作linux服务器上文件,下载linux服务器文件,删除linux服务器文件。ganymed-ssh2远程操作服务器文件
Linux服务器搭建之十六:HelixServer流媒体服务器.pdfLinux服务器搭建之十六:HelixServer流媒体服务器.pdfLinux服务器搭建之十六:HelixServer流媒体服务器.pdfLinux服务器搭建之十六:HelixServer流媒体服务器.pdf...
Linux 服务器的性能参数指标总结.doc
高性能Linux服务器构建实战:运维监控、性能调优与集群应用.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!
高性能Linux服务器构建实战:运维监控、性能调优与集群应用(完整)
·优化linux系统的调度器、内存、i/o、文件系统和网络 ·对运行商业工作负荷的web、文件、数据库,及应用服务器进行调优 ·预测调整参数或配置信息的变化所产生的影响 ·调整linux代码:对设计、定时
掌握: Linux文件操作命令 【能力目标】 会使用文件操作命令维护管理文件 【思政目标】 培养学生职业素养和工匠精神。 1.新建空文件或更新已有文件或目录的修改日期——touch命令 功能: > 若指定的文件或目录已存在...
掌握: Linux文件内容查看命令 【能力目标】 会使用命令查看文件内容 【思政目标】 培养学生职业素养和工匠精神。 1.查看文本文件的内容——cat命令 说明:文件名可使用通配符 常用选项: -n——对输出内容中的所有...
linux服务器性能调整linux服务器性能调整
6服务器编程核心要素、原理机制、工具框架等多角度全面阐述编写高性能 linux 服务器的方法
一个基于 Linux 操作系统的服务器运行的同时,也会表征出各种各样参数信息。通常来说运维人员、系统管理员会对这些数据会极为敏感,但是这些参数对于开发者来说也十分重要,尤其...Linux 服务器的那些性能参数指标.pdf
linux打开文件数
Linux能支持多种目前浒的文件系统,如ext4、FAT、VFAT、ISO9660、NFS、SMB等。 Shell:Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。 应用程序:包括文本编辑器、编程语言、X Window、办公套件...
修改linux进程可打开的文件数的限制open files linux中一切都是文件 默认linux一个进程可打开1024个文件 大并发需要达到5万个文件描述符FD,你必须修改该参数值才行
Linux高性能服务器编程电子版
Linux服务器性能调整,提供运维的调试基本技能,适合对linux感兴趣的开发人员
Linux高性能服务器编程
Linux高性能服务器编程.pdf
查看Linux服务器的各项性能指标的命令