`
MauerSu
  • 浏览: 514520 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Linux下查看及修改进程打开的文件句柄数量

 
阅读更多
源:http://blog.csdn.net/kobejayandy/article/details/47128349
https://my.oschina.net/pwd/blog/373092?p=1
评:编写的通讯程序,tomcat启动用户无法登录,且报Caused by: java.lang.OutOfMemoryError: unable to create new native thread,问题原因是当前用户文件句柄设置导致,操作系统当时设置为 1024,且需要注意,重新打开shell终端才能ulimit查看生效



----查看Linux系统默认的最大文件句柄数,系统默认是1024
# ulimit -n
1024
----查看Linux系统某个进程打开的文件句柄数量
# lsof -n | grep 5950 -c
212
----修改Linux系统的最大文件句柄数限制的方法:
      1)ulimit -n 65535 
            针对当前session有效,用户退出或者系统重新后恢复默认值
      2)修改profile文件:在profile文件中添加:ulimit -n 65535
           只对单个用户有效
      3)修改文件:/etc/security/limits.conf,在文件中添加:(立即生效-当前session中运行ulimit -a命令无法显示)
* soft nofile 32768 #限制单个进程最大文件句柄数(到达此限制时系统报警) 
* hard nofile 65536 #限制单个进程最大文件句柄数(到达此限制时系统报错)
 
      4)修改文件:/etc/sysctl.conf。在文件中添加:
fs.file-max=655350 #限制整个系统最大文件句柄数 
      运行命令:/sbin/sysctl -p 使配置生效

----------------
附录:
附录1:centos 6.*可以修改/etc/security/limits.d/90-nproc.conf
但,centos 5.*并没有90-nproc.conf这个文件,我这边是通过修改/etc/security/limits.conf,在最后添加
* soft nproc 65535
* hard nproc 65535
分享到:
评论

相关推荐

    Linux下查看进程打开的文件句柄数和如何修改方法

    修改文件句柄数在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。 对于一般的应用来说(象Apache、系统进程)1024完全足够使用。但是如何象...

    linux的最大进程句柄数设置

    其中,H 指定了硬性大小,S 指定了软性大小,n 表示设定单个进程最大的打开文件句柄数量。个人觉得最好不要超过 4096,毕竟打开的文件句柄数越多响应时间肯定会越慢。 在调整进程句柄数后,系统重启后,设定的值将...

    linux下查看系统进程占用的句柄数方法

    本文将详细介绍如何在Linux下查看系统进程占用的句柄数。 首先,了解Linux系统默认的句柄数限制是非常必要的。你可以通过`ulimit`命令来查看这些限制。例如,`ulimit -n`将显示当前shell会话的文件描述符(句柄)的...

    3 种方法教你在 Linux 中修改打开文件数量限制.doc

    由于操作系统需要内存来管理这些句柄,因此对打开文件数量的限制是为了防止内存耗尽,确保系统的稳定性和安全性。 在CentOS 7这样的Linux环境中,系统默认设置了一个最大文件描述符(file descriptor)的数量,可以...

    linux打开文件数

    本文将深入探讨Linux如何管理打开文件数,包括查看当前打开文件数的方法、理解系统限制以及如何调整这些限制。 ### 查看当前打开文件数 在Linux中,可以通过多种方式来查看当前系统打开的文件数。最常见的方法是...

    linux 句柄

    在Linux系统中,“句柄”这个术语并不常见,但根据题目描述中的信息,这里提到的“句柄”可能是指进程标识符或文件描述符等资源标识符。在Linux和其他类Unix系统中,句柄通常用来标识一个打开的文件或其他系统资源。...

    深入探讨linux下进程的最大线程数、进程最大数、进程打开的文件数

    默认情况下,一个进程能打开的文件句柄数量是有限的,可以通过`ulimit -n`查看。在示例中,这个值是1024。如果需要增加这个限制,可以使用`ulimit`命令临时修改,如`ulimit -n 10240`。然而,仅通过`ulimit`命令设置...

    配置开发支持高并发TCP连接的Linux应用程序

    然而,在 Linux 平台上,无论编写客户端程序还是服务端程序,在进行高并发 TCP 连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制。 该限制是因为系统为每个 TCP 连接都要创建一个 ...

    Linux修改TCP连接数.doc

    可使用 ulimit 命令查看系统允许当前用户进程打开的文件数限制。 为了提高用户进程可打开文件数限制,我们可以修改 `/etc/security/limits.conf` 文件,并添加以下行: ``` * soft nofile 10240 * hard nofile ...

    Linux内核调优

    然而,Linux系统默认对每个进程可打开的文件句柄数量进行了限制,这通常是基于安全性和资源管理的考虑。 #### 三、查看当前文件句柄限制 在Linux中,可以通过`ulimit -n`命令来查看当前用户的进程可打开文件句柄的...

    linux下文件描述符限制问题

    linux下文件描述符最大限制默认最大为1024,通过 [root@localhost ~]# ulimit -n 1024 这个命令可以查看。此值可以修改。 进程的文件描述符,可以通过 [root@localhost ~]# ls -al /proc/13623/fd |wc -l 59 输出...

    toomanyopenfiles的原理和解决方案.docx

    在Linux中,`ulimit -n`命令可以查看和修改当前用户可打开文件数的最大值。系统级别的限制通常在`/etc/security/limits.conf`文件中设置。增加`nofile`参数可以提高单个用户的文件句柄限制,而`nproc`参数可以调整...

    39 案例实战:如何解决经典的Too many connections故障?背后原理是什么.pdf

    ulimit命令还可以限制其他资源的使用,例如coreFileSize(进程崩溃转储文件大小)、maxLockedMemory(最大锁定内存大小)、openFiles(最大打开文件句柄数)以及maxUserProcesses(最大用户进程数)。这些限制的设置...

    提高linux并发处理能力.docx

    在Linux系统中,为了提升并发处理能力,我们需要关注系统对于每个进程可以打开的文件数量的限制。这是因为每个TCP连接都会创建一个socket句柄,而每个socket句柄本身就是一个文件句柄。 ##### 1. 查看当前限制 ...

    高并发TCP连接时处理方法

    在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制。这是因为系统为每个TCP连接都要创建一个socket句柄,每个...

    Linux下oracle 12c安装图解

    其中`nproc`控制了Oracle用户可以启动的最大进程数,`nofile`则控制了最大文件句柄数量。 ##### 配置登录限制 接着,需要编辑`/etc/pam.d/login`文件,添加以下内容来应用上述权限限制。 ``` sessionrequired/lib64...

    linux下安装oracle11g

    在Linux环境下安装Oracle 11g是一项复杂而关键的任务,因为Oracle数据库系统是企业级的,需要满足特定的系统需求和配置要求。以下是对安装过程的详细解释: 首先,确保你的Linux服务器符合基本的系统要求。对于...

    日常Linux命令

    文件句柄数限制了系统同时打开文件的数量,这对高并发服务尤为重要。在CentOS 6.5中,我们可以使用`ulimit`命令来临时更改这个限制。`ulimit -n`显示当前最大打开文件数,`ulimit -n 新值`设置新的限制。然而,临时...

Global site tag (gtag.js) - Google Analytics