Php 单个文件夹还是多个文件夹,用于存储数百家商店的800万张图像?
我正在开发一个价格比较网站,其中有数百家商店,每个商店有数千张产品图片 总共有800万张图片 每个图像都有以下文件名格式:StoreID-productID.jpg 每个图像大小小于10KB。平均7KB 该网站是用php和mysql开发的 我有linux专用服务器 我有很多磁盘空间。所以,这不是一个问题 我的问题是:Php 单个文件夹还是多个文件夹,用于存储数百家商店的800万张图像?,php,image,Php,Image,我正在开发一个价格比较网站,其中有数百家商店,每个商店有数千张产品图片 总共有800万张图片 每个图像都有以下文件名格式:StoreID-productID.jpg 每个图像大小小于10KB。平均7KB 该网站是用php和mysql开发的 我有linux专用服务器 我有很多磁盘空间。所以,这不是一个问题 我的问题是: 我是否应该将所有商店的所有图像保存在一个文件夹中 因此,800万张图片将放在一个文件夹中 这会影响检索它们的效率吗 目前我正在使用这种方法,想知道这种方法是否有缺点 我应该为每个商
images/storeID1/
images/storeID2/
....
请建议。
谢谢取决于您使用的文件系统。(EXT3、NTFS、FAT等) 每个文件夹都有不同的文件夹大小限制和性能特征 对于800万个文件,尽可能多地分离文件夹是最安全的。然后,如果遇到扩展问题,您可以选择使它们成为不同的物理驱动器 如果您使用的是Linux,那么很容易在现有文件夹结构中安装另一个驱动器。您也可以使用符号链接
images/Store1/FILES...
images/Store2 ---> /mount/SDA01/Store2/ (symbolic link to a separate drive)
限制
有关不同文件系统限制的更多详细信息,请参阅此超级用户问题:
注意:这些是系统能够处理的绝对极限。在这些限制的上限上的性能肯定会受到影响。在我最近的一个项目中,随着时间的推移,我不得不存储大量图像。我们决定最好的办法是将它们分割成带编号的目录,每个目录中都有一定数量的图像。我们的数据库将存储文件名、目录、与之关联的项目的外键、一个允许我们禁用它而无需去删除内容的标志,以及它的下载日期。它工作得非常好。取决于您使用的文件系统。(EXT3、NTFS、FAT等)最好将它们分开,以防你想找到一个特定的图像,这样你就不必搜索800万个onceThanks来获得快速回复。我会把它们放在不同的文件夹里。谢谢。我会将它们移动到单独的文件夹中。