首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该把照片存放在哪里?文件系统还是数据库?

问我应该把照片存放在哪里?文件系统还是数据库?
EN

Stack Overflow用户
提问于 2009-10-09 23:16:40
回答 10查看 6.3K关注 0票数 11

可能重复: 存储上传的照片和文档.文件系统与数据库blob

我开始开发一个web应用程序,其主要目的是显示照片。用户也可以上传照片。

提出的第一个问题是把照片存放在哪里:在文件系统或数据库上。

我将使用一个Windows框来托管这个站点。数据库为MySQL,后端代码为C#,利用ASP.NET MVC。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2009-10-09 23:21:37

当然,文件系统,除非您的目标是关于日报的故事。最简单的方法是让照片由您可以从文件本身派生的属性组织,比如它的SHA-1散列。然后只需将散列存储在数据库中,附加到照片的主键和其他属性(谁上传了它、上传日期等)。

分配文件系统上的照片也是个好主意,这样您就不会在一个目录中得到数百万个文件。所以你会得到这样的东西:

代码语言:javascript
复制
storage/00/e4/f56c0de1c61fdb926e79e8a0a65bd12930c9.jpg
storage/25/9a/ec1c55bfb660548a6770238668c4b117d92f.jpg
storage/5d/d5/4b01d98f17a9ad9dd1526b49ba39b5aa37a1.jpg
storage/63/49/6f740b6c284ce6685dc17d473a7360ace249.jpg
storage/b1/75/066d178188dde110149a8422ab651b0ee615.jpg
storage/b1/20/a2b7d02b7b0c43530677ab06235382a37e20.jpg
storage/da/39/a3ee5e6b4b0d3255bfef95601890afd80709.jpg

这也是很容易移植,如果您曾经移动到切分存储。

票数 31
EN

Stack Overflow用户

发布于 2009-10-09 23:36:54

如果你正在建立一个网站,围绕照片,然后忘记数据库。如果它将成为流行,你的数据库将受到沉重打击,它的大部分时间将花在交付照片。此外,数据库的规模也不是很好。将它们保存在文件系统中有更多的好处。而且您可以很好地扩展,有静态的内容服务器,使用服务进行内容传递。

而且,亚马逊S3或其他云提供商也有自己的优势。例如,S3 + Amazon将提供良好的性能。CloudFront将您的文件缓存在世界各地的服务器上,这样就可以在任何地方轻松/快速地访问它们。但如果我们谈论的图片和网站变得流行,你的账单可能会相当高。

对于S3,每个存储和每个传输到/出云中的亚马逊收费。为了CloudFront /传输。

票数 4
EN

Stack Overflow用户

发布于 2009-10-09 23:48:22

如果您使用的是Server 2008,则有一个Filestream数据类型,它可以处理所提到的有关DB越来越大的大多数问题。它处理文件系统和表之间同步的所有烦人的细节。

在这里寻找关于主题:将任何数据存储在Server 2008 (Katmai)中的博客文章

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1546485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档