我想分开存储在多个文件夹中的服务器上的图像。我正在考虑创建这个结构/图像/年/月(图片/ 2011/04)。 文件名称存储在数据库中,并且还创建日期。这是单独文件的好主意吗?按日期在服务器上存储大量文件 - 子文件夹?
0
A
回答
1
嗯,这部分取决于你想要对他们做什么,以及你认为是多数人。
与索引数据库中的列一样,此方案可能会使某些操作受益并对其他操作有害。
例如,在一个简单的方案中,没有有可用日期,能够根据其名称的一部分找到图像可能最终会变得更加困难,因为您不知道它在哪里将会。我用这个方案对于像日志文件,但效果很好,因为我已经知道其中这将是:
/logs/2011/01/2011_01_14.log
,并没有去寻找它。
现在,您已经解决了特定的问题,因为您的数据库条目也保存了日期,所以我无法看到您的方案出现任何直接问题。这并不是说有没有任何 :-)
我的建议是做最简单的事(平目录格式)最初和唯一的担心,当它成为一个问题。由于您拥有日期,因此将所有图像移动到不同的目录上是一件简单的事情。
当然,如果您已经实现了单独的目录,请坚持。同样,如果方法有缺陷,未来应该相对容易调整。
一个你可能要考虑的是存储位置(绝对的,或相对于已知点)在数据库中为好,而不仅仅是日期的事情。然后你会使用它(而不是日期上的操作)来定位文件。
这将允许您完全更改放置文件的方法,而无需更改位于其中的任何代码。
1
这听起来没问题。我跑了一个照片启动大约5年,并使用类似的结构来存储照片。它应该适度放大(我们有≈1M张照片)。我还会考虑存储图像的sha1或md5散列,以便您可以轻松检测到重复项,并确保在将文件保存到磁盘之前对文件的名称进行规范化。
相关问题
- 1. laravel存储文件夹在服务器上传时转换成文件
- 2. xls文件获取存储为上传到服务器的文件夹
- 3. 转储Windows服务日志文件的文件夹
- 4. 服务器在哪里存储文件?
- 5. Sftp服务器中的子文件夹
- 6. 存储在azure文件服务中的文件的大小
- 7. 在子文件夹中存储codeigniter库
- 8. ASP.NET文件上传不存储在服务器上
- 9. 将从Ubuntu上传的文件存储在Windows文件服务器上
- 10. 最后修改日期在PHP Web服务器上的文件夹
- 11. Laravel在nginx服务器上的子文件夹中
- 12. 如何检查Amazon S3存储桶内文件夹的子文件夹大小
- 13. 如何在asp:Gridview中按日期排序文件和文件夹?
- 14. 不能下载的文件保存在服务器上的文件夹中笨
- 15. 使用PL/SQL从服务器的子文件夹FTP文件
- 16. 最大数量的文件夹Windows服务器
- 17. 批处理文件:如果文件夹中有子文件夹,如何删除按日期排序的文件?
- 18. 将图像存储在数据库vs文件服务器上与服务器上的Zip文件
- 19. 图像文件没有保存到服务器“图”文件夹
- 20. 图片另存为文件夹中的文件服务器
- 21. php文件存储在Web服务器上吗?
- 22. Autodesk Forge Viewer在本地服务器上存储文件?
- 23. 短时间在服务器上存储文件
- 24. 在Windows服务器上的php和文件存储
- 25. Git删除服务器上不在存储库中的文件
- 26. 解析服务器 - 它在哪里存储上传的文件
- 27. 如何在服务器上存储文件ASP.net
- 28. 将商业文件存储在服务器上
- 29. 将PDF文件存储在MySQL服务器上智能
- 30. 将文件存储在服务器上和数据库中?
文件名在36个字符格式(2f34fsc0-81fd-11DA-9156-02036a0f8df6a)的GUID,我想,在未来可按月上传约2000-6000的文件,是否有必要拆这个文件夹? – morandi3 2011-04-21 22:48:37
那么,这取决于你将存储多少个月:-)这也取决于你将使用哪个文件系统。其中一些非常有效,有些则不是。在每月6000个并且没有删除的情况下,在遇到问题之前,您可能会发现自己拥有两年的数据。这是很多时间来看待问题。 – paxdiablo 2011-04-21 23:02:14
我希望能运行这个应用程序至少2 - 3年,并且文件存储在Linux服务器上。我想避免稍后更改文件位置,因为通讯中可能包含一些图像。 – morandi3 2011-04-21 23:12:56