在我的网站上,用户有文件,所以我为每个用户创build一个文件夹,当他们注册。
例如
/用户数据/ USERID
如果网站增长,我有成千上万的用户,我可能会在一个文件夹中有太多的用户文件夹,所以我决定把它们分开。
例如
/ userdata / 1 / USERID(第一千个用户)
/ userdata / 2 / USERID(第二千个用户)
我的问题是我应该把多less文件夹放在一个子文件夹? 每个1000是一个好主意? 更多? 减? 只是想确保事情顺利进行。
我总是按照ext2 / ext3的最大值〜1000的规则工作。 我怀疑文件系统的select可能会影响你的select。
ext3的绝对限制是〜32k。 看看Wikipedia上所有的血淋淋的细节: http : //en.wikipedia.org/wiki/Ext3
对于你的目录哈希algorithm,我build议使用ID的最后一位数字。 如果你计算$id % 10并使用该值,它将工作。 这样你就可以获得均匀的分配。
这主要取决于您正在使用的文件系统。
你可能会发现使用模式比使用任意数字更容易。 CPAN,例如,使用
U/US/USERNAME
即第一个字母/前两个字母/完整的用户名
如果您的用户名不经常更改,CPAN思维模式可能仍然有优势。 知道90%的用户在哪里下钻并find他们的内容,而不是必须searchN个查找USERID的文件结构通常会更好。