我正在制作一个应用程序,该应用程序将在其第一年存储大约50,000个图像,而另一个存储75.000个应用程序。图片可以来自画廊,新闻图片,文章图片和个人资料图片。所以我想给每个图像一个GUID并将GUID存储在数据库中。用于存储图像的目录结构ASP.NET - 需要的建议
至于目录结构我就是这样想的东西:
~/Upload/Images/F2/50/F2504E0-4F89-11D3-9A0C-0305E82C3301.jpg
所以我使用了前4个字符的GUID为我的目录结构目录之间更均匀地分布图像的位。
现在我对这种做法的一些问题:
- 它是好习惯存储所有不同类型的图像一起而不是使用
~/Images/Upload/Profiles
,~/Images/Upload/Articles
等 - 我还保存缩略图和他们有一个不同的GUID,所以拇指不会与原始文件夹在同一个文件夹中,并且不知何故,这不会给我一个好的感觉,但我想这应该不重要。
- 同去的画廊,我用来存储在文件夹中的画廊一样
~/Images/Upload/Galleries/12
,现在都在图库中的图像将在不同的子文件夹中散落,这是一个很大的性能损失? - 你们对目录结构有什么其他想法吗?
正如你可能会看到我有点害怕使用这种方法,但因为会有大量的图片甚至更多的话,我给了我必须让控制的数字去,我觉得:)
请给我你的意见,非常感谢你。
亲切的问候, 马克
编辑:
忘了提,图像将被相当删除也经常
嗨良好的联系,感谢您的评论。问题在于GUID的随机性中存在一些逻辑组织。由于GUID会生成随机字符串,因此它会确保它通过图像在子文件夹中均匀传播(很好,相当均匀),这就是我想要的。另一个优点是我可以在不同位置分配目录而不必担心路径。我曾考虑您的可能性也和它似乎是一个博客一个很好的选择,但不适合我,因为这将是混乱的,当所有这些不同类型的图像在那里(画廊等)去。感谢您的建议伴侣。 – Mark 2010-11-15 23:48:32
我可能只是在选择为以下初始设计: /Upload/Images/Galleries/randomfolder/randomstring.jpg,/Upload/Images/Profiles/randomstring.jpg,/Upload/Images/Articles/randomstring.jpg。看起来更适合我,但可能不是最好的事情哈哈 – Mark 2010-11-15 23:49:22