代码之家  ›  专栏  ›  技术社区  ›  Niko

ulimit、lsof、cat/proc/sys/fs/file max之间的差异

  •  0
  • Niko  · 技术社区  · 6 年前

    我一直在 java.io.IOException: Too many open files 在运行一个Kafka实例并使用一个包含1000个分区的主题时,我开始研究ec2虚拟机中的文件描述符限制。我无法理解Centos 7机器上打开文件的确切限制,因为以下所有命令都会产生不同的结果。这些命令是:

    • ulimit -a :打开文件1024
    • lsof | wc -l : 298280
    • cat /proc/sys/fs/file-max :758881(这与 /proc/sys/fs/file-nr )

    如果实际限制是最后一个命令产生的限制,那么我远远低于它( lsof | wc-l : 298280). 但如果是这样的话 ulimit 命令对我来说很不清楚,因为我远远超过了1024个打开的文件。

    According to the official documentation the best way to check for file descriptors in Centos is the /proc/sys/fs/file-max file 但这些命令之间是否存在所有这些看似“不一致”的地方?

    0 回复  |  直到 6 年前