为将来的扩展而组织文件夹的最佳方法是什么?我正在准备推出一个新网站。我预计未来我将不得不处理上传照片的存储容量,分别将它们分布在多个硬盘上。目前我使用类似这样的方法:
/1/1/照片.jpg /1/2/照片.jpg。 /10/10/照片.jpg
答案1
我使用文件哈希的一部分作为文件名(并将哈希存储在数据库中),然后根据首字母(或多个字母)将它们组织到子目录中。例如,文件de9f2c7fd25e1b3afad3e85a.jpg
转到
/storage/d/de9f2c7fd25e1b3afad3e85a.jpg
由于哈希分布均匀,因此很容易将存储拆分到多个驱动器,每个目录应该有大约相同数量的图像。目前,我有大约 2TB 的图像以这种方式组织,效果非常好。
顺便说一句,这个功能的一个巧妙之处在于,如果你以某种方式弄乱了你的文件名,你不会有无数杂乱无章的图像,只需对它们进行哈希处理,然后你就可以继续工作了。
答案2
带有唯一时间戳的 URL 是一个很好的开始,例如 2009/11/30/photo-widthxheight-{其他提取的 EXIF 信息}.jpg