为什么大多数 ulimit 建议要求将文件描述符限制设置为 65535?

为什么大多数 ulimit 建议要求将文件描述符限制设置为 65535?

在搜索最大文件描述符ulimit调整建议时,许多网站建议将文件描述符大小设置为 65535。在某些情况下,其大小为 100000、120000 甚至更高。其中一些帖子可以追溯到 20 年前。

对于某些帖子,我确信这是一个任意值。但似乎有很多建议都针对这些值,特别是 65535。为什么这么多博客文章和服务器调优文档建议将最大文件描述符设置为 65535 之类的值?从表面上看,这似乎是一个任意值。是出于历史原因吗?

答案1

几乎是任意的。有人为建议挑选了一个值,其他许多人都照搬了。

对于几百个数据库文件或几千个邮件盘来说,个位数千的默认值可能太小了。因此,5 位或 6 位小数可能是合适的数量级。

65535 恰好是 64k,也称为最大的 16 位数。然后您可能会看到 64000 这个奇怪的数字,也许有人混淆了二进制和十进制思维。这是相当多的打开文件,但并不反映现代系统上的最大可能值。

“现代”系统限定符,因为如果你回溯得足够久远,64k 是某些平台的限制。过时的 HP-UX 函数调用pstat_getfile() 突破 64k。显然与 Linux 无关,但如果没有必要提高,为什么不将其保持在熟悉的 64k 数字以下呢?

相关内容