3.4.11 调整Linux系统文件描述符数量
您可以在百度里搜索“跟老男孩学Linux运维:Web集群实战 艾草文学(www.321553.xyz)”查找最新章节!
3.4.11 调整Linux系统文件描述符数量
文件描述符是由无符号整数表示的句柄,进程使用它来标识打开的文件。文件描述符与包括相关信息(如文件的打开模式、文件的位置类型、文件的初始类型等)的文件对象相关联,这些信息被称作文件的上下文。文件描述符的有效范围是0到OPEN_MAX。
对于内核而言,所有打开的文件都是通过文件描述符引用的。当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。当读或写一个文件时,使用open或creat返回的文件描述符标识该文件,并将其作为参数传递给read或write,文件描述符定义的内容如下。
/* Standard file descriptors. */ #define STDIN_FILENO 0 /*Standard input. */ #define STDOUT_FILENO 1 /* Standard output. */#define STDERR_FILENO 2 /* Standard error output. */
查看Linux服务器文件描述符设置的情况可以使用ulimit-n命令,文件描述符大小默认是1024。
[root@www ~]# ulimit -n 1024
对于高并发的业务Linux服务器来说,这个默认的设置值是不够的,需要调整。
调整方法1:
执行vim/etc/security/limits.conf命令,在文件结尾加上如下一行。
* - nofile 65535
或者直接执行如下一行命令追加上述内容到文件尾部:
[root@www ~]# echo '* - nofile 65535 '>>/etc/security/limits.conf [root@www ~]# tail -1/etc/security/limits.conf * - nofile 65535
配置完成后,需重新登录才可以生效,查看如下:
[root@www ~]# ulimit -n 65535
调整方法2:
直接把ulimit-SHn 65535命令加入/etc/rc.local,用以设置每次开机启动时配置生效,命令如下。 跟老男孩学Linux运维:Web集群实战