一个文件夹中可以有多少个文件夹?

一个文件夹中可以有多少个文件夹?

在我的网站上,用户有文件,因此当每个用户注册时,我会为他们创建一个文件夹。

例如

/用户数据/用户ID

如果网站发展壮大,并且我有数千名用户,那么我可能会在一个文件夹中拥有太多的用户文件夹,因此我决定将它们拆分开来。

例如

/userdata/1/USERID(前一千名用户)

/userdata/2/USERID(第二千个用户)

我的问题是我应该在一个子文件夹中放多少个文件夹?每个子文件夹中放 1000 个文件夹是个好主意吗?更多?更少?只是想确保一切顺利进行。

答案1

我总是遵循使用 ext2/ext3 时最大容量为 ~1000 的规则。我怀疑文件系统的选择可能会影响您的选择。

ext3 中的绝对限制是 ~32k。请查看 Wikipedia 上的所有详细信息:http://en.wikipedia.org/wiki/Ext3

对于目录的哈希算法,我建议使用 ID 的最后一位数字。如果您计算$id % 10并使用该值,效果会很好。这样,您就可以获得均匀的分布。

答案2

这主要取决于您使用的文件系统。

你可能会发现使用模式比按任意数字拆分更容易。例如,CPAN 使用

U/US/USERNAME

即首字母 / 前两个字母 / 完整用户名

答案3

如果您的用户名不经常更改,CPAN 思维模式可能仍然有优势。通常,最好让 90% 的用户知道在哪里深入查找他们的内容,而不是搜索 N 个文件结构来查找 USERID。

相关内容