1

这是我以前在网站上看到的一种模式,允许用户上传图片等内容。

例如,为什么http://upload.wikimedia.org/wikipedia/commons/7/70/Example.png不只是像http://upload.wikimedia.org/wikipedia/commons/Example.png?

这有实际原因,还是只是货物崇拜?

4

2 回答 2

3

当同一目录中有数十万个文件时,许多文件系统的性能不会很好——在目录中查找文件需要很长时间。

为避免此问题,文件被分布到文件夹层次结构中。为了获得均匀分布,您对文件名或内容进行哈希处理 - 标识文件的内容 - 并使用该哈希的部分内容来确定文件应放置在哪个文件夹中。这就是 7/70 的来源:它源自哈希的前缀分两步,创建一个两级层次结构。因此,文件分布在 256 个不同的文件夹中,这意味着每个文件夹中的文件要少得多,从而提供更好的文件系统性能。

于 2010-07-21T19:28:14.237 回答
0

有两个明显的原因:

  • 避免将太多文件加载到单个目录中
  • 它可以轻松避免文件名冲突,而无需重命名原始文件
于 2010-07-21T19:33:49.367 回答