如果我在AWS中托管我的Web应用程序,我必须使用S3

时间:2017-08-20 01:01:44

标签: php aws-sdk

我有一个使用PHP存储图像和Videos.im的Web应用程序。如果我在文件服务器中使用S3而不是存储它是有意义的,因为它们都在AWS(Web服务器和文件存储)

2 个答案:

答案 0 :(得分:1)

是。我强烈推荐。 S3是AWS提供的对象存储服务。这是一个存储静态文件的好地方,如图像/视频/ css / javascript,您可以直接提供服务,而不会给服务器带来更多负担。如果您使用S3,有很多好处,

  1. 99.999999999%的耐用性和99.99%的文件可用性
  2. 按需扩展性
  3. 通过集成CloudFront提供文件缓存支持 - 加载文件更快
  4. 文件的细粒度访问管理
  5. 使用CloudFront Signed URls
  6. 分发私人内容
  7. 使用CloudFront将媒体流式传输到全球各地的观众
  8. 能够轻松保护encryption数据(例如:SSE-S3,SSE-KMS)
  9. 文件的生命周期管理,例如:以低成本存档
  10. 使用文件的跨区域复制轻松设置灾难恢复
  11. 您可以使用AWS SDK for PHP与服务器上的S3进行交互。

答案 1 :(得分:0)

首先,如果你使用AWS,它不是必须在S3中托管文件,但强烈推荐用于不经常更改的静态文件,如视频,图像,JS,CSS&等

如果您使用S3进行文件存储,则可以利用S3默认的可靠性和性能效率的所有优势。

此外,建议使用事件驱动模式将文件上传到S3并存储文件元数据,这将提高应用程序的可伸缩性。以下example说明了使用S3事件触发器在DynamoDB中上传和存储文件元数据的典型流程。

enter image description here

对于频繁修改文件或部分更新,您可以使用不同的存储选项,例如Elastic File SystemEBS

对于这两种方法,您可以通过AWS CloudFront CDN缓存内容来获得更高的读取速度。