【问题标题】:S3 buckets compositionS3 存储桶组成
【发布时间】:2021-03-01 19:42:21
【问题描述】:

我正在开发 CMS,它作为单个实例运行,但服务于不同用户的多个网站。此 CMS 需要将文件存储在存储器中。每个网站可以有少量图像,也可以有数千个对象。目前我们服务于大约 5 个网站,但计划有数百个,因此必须轻松扩展。

现在我正在考虑两种可能的方法。我想使用 S3 进行存储。

  1. 解决方案是为我的应用程序中的所有文件设置一个存储桶
  2. 解决方案是为每个网站设置一个存储桶。

根据 AWS 文档,S3 可以处理“几乎无限量的字节”,所以我认为第一个解决方案可以很好地工作,但我正在考虑其他方面:

  1. 每个网站都有一个桶不是更干净吗?是不是更利于维护?
  2. 如果是,哪种解决方案更安全?是否有一些安全问题需要关注?
  3. 是否同样适用于其他类似 S3 的服务,如 Minio 或 DigitalOcean Spaces?

非常感谢您的回答。

【问题讨论】:

    标签: amazon-web-services amazon-s3 minio infrastructure


    【解决方案1】:

    我会选择解决方案 1。

    从技术角度来看,您可以放入存储桶中的对象数量实际上是没有限制的 - S3 专为极端规模而构建。对于 5 个网站,选项 2 可能听起来很诱人,但扩展性不是很好。

    每个区域或每个账户有 100 个存储桶的软限制(即您可以提高它),这表明使用数百个存储桶可能是一种反模式。同样,固定 100 个水桶并不比固定一个水桶容易。

    关于安全性:如果需要,您可以在 S3 中使用非常精细的存储桶策略。如果需要,您还可以选择单独加密每个对象的方式。预签名 URL 等功能可以帮助您授予对 S3 中特定对象的临时访问权限。

    如果您的目标是向最终用户提供静态内容,则您必须使对象公开可读、使用上述预签名 URL 或将 CloudFront 设置为存储桶前的 CDN。

    我不知道这与 S3 类服务有何关系。

    【讨论】:

      猜你喜欢
      • 2020-12-13
      • 1970-01-01
      • 2023-02-01
      • 2021-01-19
      • 1970-01-01
      • 2016-08-25
      • 2010-10-23
      • 2015-04-25
      • 2014-02-03
      相关资源
      最近更新 更多