【问题标题】:Storage with Amazon S3 [closed]使用 Amazon S3 进行存储 [关闭]
【发布时间】:2010-09-18 19:02:25
【问题描述】:
我的网站发布新闻以及照片和视频。现在,我的视频和图像仅托管在 Web 服务器上,并且每天都在占用 HDD 空间。添加或增加硬盘不会解决我的问题,因为这也会在未来再次产生类似的问题。
这里有一些疑问需要澄清。
- 我可以使用 Amazon S3 服务来解决我的问题吗?
- 是否可以作为 HDD 从 S3 读取图像和视频?
- 比较普通硬盘会不会有性能问题?
- 我能否完全盲目地依赖他们的服务而不用担心备份我的存储空间?
【问题讨论】:
标签:
service
amazon-s3
storage
amazon
【解决方案1】:
-
由于您尝试托管的是“静态文件”,因此您可以大胆地使用 s3 服务来解决您的问题。有关为什么“应该”使用 s3 的更多信息,您可以参考以下文章/教程。
http://net.tutsplus.com/tutorials/tools-and-tips/use-amazon-s3-firefox-to-serve-static-files/
这是以前写的,读完之后我开始使用 s3 并且仍在使用它,而且客户非常满意。
-
您的问题不是很清楚,但答案是肯定的和否定的。 Amazon s3 将文件组织并保存在“桶”中,这是一种容器/目录,与服务器上 HDD 上可用的文件结构“有些”不同。例如,您将无法像在 HDD 上那样引用相对路径中的图像或视频。但是,您可以使用存储桶的文件路径,此外,您可以为存储桶创建自定义 cname,例如 static.yourdomain.com
另一个区别是您无法使用 FTP 将文件传输到存储桶,您必须使用 AWS 控制台或第三方应用程序(有很多可用的应用程序)来上传文件。
对 s3 上可用文件的访问由 ACL 设置控制,与 HDD 上的设置有点不同,但简单且非常直接。例如,如果您希望存储桶上的所有文件都可以公开使用,您可以通过简单的“存储桶策略”进行设置
但是,使用 s3 提供文件是一样的,文件可以通过 HTTP 访问并且非常简单。例如要在网站上使用托管在s3上的图像,只需使用http文件路径作为'src',简单!
-
根据我的经验,性能通常比从 HDD 提供文件更好,原因有几个。 s3 显然比使用共享主机要快,而且大多数时候比专用服务器快。云架构确保在站点之间分配负载,即使流量增加,性能也不会受到阻碍!
另一个优点是,当使用不同域提供文件时,浏览器允许并行下载。因此,当您从 s3 下载图像时,它可以与您的 HTML/CSS/JS 并行下载。如果您想真正提升您的文件(特别是视频),我建议您使用 Cloudfront 他们的 CDN,它与 s3 无缝协作。
这个问题很棘手,根据我的经验,他们的服务非常可靠并且保存在冗余服务器上。但是,始终建议使用单独的备份,以防万一。大多数在线备份解决方案也使用亚马逊的服务(dropbox、ubuntuOne),所以我认为信任它们并没有什么坏处。
【解决方案2】:
Ram,你肯定问了很多问题。
是的,您的问题是 S3 旨在解决的问题。
不,您不能(轻松)将 S3 挂载为文件系统。将文件导入 S3 有一种简单但有点神秘的方法;您可以使用 HTTP 将它们恢复。
嗯,它肯定比附加的 HDD 慢;这对你来说是否是个问题,我不能说。
他们对自己的可靠性做出了相当夸张的声明,我从未听说有人遇到过问题,但是您必须查看文件的价值、他们的发布可靠性声明以及备份成本,然后你的决定。
我个人使用并喜欢 S3。它便宜且(到目前为止)可靠,但“YMMV”如此广泛使用是有原因的。
【解决方案3】:
拉姆,
可以像本地驱动器或文件夹一样挂载 Amazon S3。
如果您的网络服务器运行的是 Windows,您可以使用 TntDrive 将 Amazon S3 挂载为 Windows 驱动器,如果您使用的是 Linux,则可以使用 FuseOverAmazon。
更新:
Amazon 上有两种存储类类型,标准存储类旨在在给定年份提供 99.999999999% 的持久性和 99.99% 的对象可用性,并旨在维持两个设施中的数据并发丢失。
减少冗余存储类便宜一些,但提供的持久性较低 - 99.99%