PHP& S3:需要架构指导

时间:2011-11-18 20:17:36

标签: php architecture amazon-s3 storage

我希望为我的网络应用程序的最终用户提供在应用程序内的PHP页面上拖放文件的功能,并让他们自动上传到S3进行存储。从我能够找到的,然后我将“指针”存储到我的数据库中的S3文件。有人能指出我的示例/文档或其他可能更好地演示如何在我的应用程序中构建这个?我是S3的新手,所以如果有任何问题和/或更好的文件存储解决方案(便宜的话)我都是耳朵。

感谢您的时间和帮助。

1 个答案:

答案 0 :(得分:1)

当用户将文件上传到您的应用时,您的应用会将文件上传到S3。然后,您的应用程序会将该文件的唯一S3 URL存储在您的数据库中。如果你没有使用S3,你会做同样的事情,除了引用将是你本地驱动器上的文件。

然后,只要您想将文件提供给任何人,您可以:a)让您的应用程序从S3检索文件,然后将其提供给您的用户或b)直接将S3 URL提供给用户,他们可以下载它来自S3自己。你使用哪个将取决于你的具体要求,但选项(b)通常更好,因为它让亚马逊完成下载的所有工作。 (b)如果你有私人文件不公开(比如下载购买),你甚至可以工作,因为你可以通过过期的URL授予临时访问权限。

在许多情况下,S3比仅使用本地存储更昂贵。亚马逊的存储价格与零售硬盘价格相比具有竞争力。但除此之外,您还要支付S3带宽费用,这实际上可能会非常昂贵。如果您选择S3因为它便宜,我认为您选择它是出于错误的原因。您应该选择S3,因为它可以扩展,它具有容错能力,您永远不必考虑增加存储空间。