Разница между ulimit, lsof, cat / proc / sys / fs / file-max - PullRequest
0 голосов
/ 18 октября 2018

Я получил java.io.IOException: Too many open files во время работы экземпляра Kafka и использования одной темы с 1000 разделами, поэтому я начал исследовать ограничения файловых дескрипторов в моем ec2 vm.Я не могу понять, какой именно предел для открытых файлов на компьютере 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 открытых файлов.

Согласно официальной документации, лучший способ проверить наличиедескрипторы файлов в Centos - это /proc/sys/fs/file-max file , но есть ли все эти, казалось бы, "несоответствия" между этими командами?

...