SO 上有一些关于大型项目中文件管理和存储的非常好的问题。
Storing Images in DB - Yea or Nay?
Would you store binary data in database or in file system?
第一个有一些很好的见解,在我的项目中我决定采用文件路径而不是数据库路径。
反对使用文件系统的一个主要观点是备份。但是在我们的系统中,我们有一个很好的备份方案,所以我并不担心。
下一个路径是如何存储实际文件。而且我考虑过让文件的位置始终保持静态,并在数据库方面创建一个虚拟目录系统。所以指向文件的链接不会改变。
我正在构建的系统将有一个全局文件管理,因此所有用户都可以访问所有文件。但是许多走文件路线的人谈论物理目录大小(例如,如果所有文件都在一个目录中)
所以我的问题是,在为这些静态文件创建文件夹时有哪些技巧或最佳实践方法,或者我是否根本不应该使用虚拟目录路径。
(该项目在 LAMP 堆栈 (PHP) 上,如果有帮助的话)
最佳答案
一种方法是为每个文件分配一个唯一编号,并使用它来查找实际文件位置。然后您可以使用该编号将文件分发到文件系统中的不同目录中。例如,您可以使用类似这样的方案:
/images/{0}/{1}/{2}
{0}: file_number % 100
{1}: (file_number / 100) % 100
{2}: file_number
关于php - 管理大量文件的技巧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/671260/