Linux句柄数过多问题排查
发布日期:2025-04-08 12:22:34 浏览次数:10 分类:精选文章

本文共 440 字,大约阅读时间需要 1 分钟。

 1、句柄概述

句柄(Handle)是操作系统用来抽象管理资源(如文件、网络连接等)的标识。在Linux中,句柄通常表示为文件描述符(File Descriptor),可以通过系统调用访问。

要检测句柄数,可以使用ulimit命令查看当前用户或进程的最大文件描述符限制:

ulimit -n

要查看特定Java进程的当前打开文件描述符,可以使用以下命令:

lsof -p 
| wc -l

假设我们的Java程序进程ID是1234,以下命令将返回该进程当前打开的文件描述符数:

lsof -p 1234 | wc -l

统计句柄数的命令:

lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr| head -n 10

输出的结果远超了ulimit -n的结果,如果发现数据库连不上,在数据库的err日志中,就会出现了“Too many open files”错误,都知道这个是mysqld进程触发了句柄限制,导致无法建立新

上一篇:linux后台启动seata,yearning
下一篇:Linux变量

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月27日 23时45分51秒