从EC2实例托管的AWS用户上传文件

时间:2018-04-19 02:25:58

标签: amazon-web-services amazon-s3 amazon-ec2

我有一个需要用户上传文件托管的Web应用程序(每个文件大约10-200mb)。在我的本地环境中,我一直在单独的文件夹中托管这些文件。也就是说,我需要以某种方式从EC2环境中做同样的事情。我认为AWS'S3可以满足我的需求,但似乎我无法在那里发送文件,因为它与我的EC2实例是一个单独的文件夹。

对AWS上的CDN类型托管的任何建议?

2 个答案:

答案 0 :(得分:0)

对于可从EC2访问的可伸缩对象存储,AWS S3是一个不错的选择。

S3客户端位于variety of languages

要提供客户端上传,您可能需要查看presigned urls。这些可以用来为您的用户提供一个方便的URL,他们可以将他们的数据发布到。

答案 1 :(得分:0)

如果您计划上传对Web应用程序代码进行最小更改的文件,则可以考虑使用Amazon Elastic File System(EFS)。它的工作方式是您可以将EFS安装到EC2实例的文件夹中(如果您的Web应用程序扩展,也可以将相同的文件系统安装到另一个EC2实例)。安装后更类似于写入文件系统。您使用此方法获得的另一个优势是,您将获得使用EFS的无限存储空间,您将支付存储消耗。您还将获得区域复制以获得更高的数据持久性。

但是,如果您计划通过CDN上传和提供内容,并且您没有对上传的文件进行频繁修改,那么从长远来看,您也可以考虑使用S3。这相对于EFS的优势在于无需服务器,您无需运行Web服务器即可通过http或CDN提供这些文件,生命周期策略,内置安全模型,对具有S3触发器的事件驱动工作流的本机支持以及等