当前位置:  开发笔记 > 运维 > 正文

与CloudFront结合使用时,AWS S3标准不频繁访问与减少冗余存储类别?

如何解决《与CloudFront结合使用时,AWSS3标准不频繁访问与减少冗余存储类别?》经验,为你挑选了1个好方法。

我正在使用CloudFront缓存和分发当前存储在标准存储类S3中的所有缩略图.由于CloudFront仅缓存原始数据并且每24小时访问它们,因此使用比标准更便宜的存储类是有意义的:标准不常访问(IA)或减少冗余(RR).但我不确定哪一种更合适且更具成本效益.

标准IA具有最便宜的存储(比标准类便宜58%,比RR便宜47%),但比标准和RR要贵60%.但是,在计算成本时,存储在Standard-IA类中的128kb以下的所有文件都会舍入到128kb,这适用于我的大多数缩略图.

同时,RR级的存储仅比标准级便宜20%,但其请求成本比标准IA低60%.

我不确定哪一个在实践中最具成本效益,并且会感谢任何有经验的人都能提供一些反馈.



1> Michael - sq..:

你的问题的前提是有问题的.在选择S3存储类时,CloudFront 可能会将对象缓存一段时间的事实实际上没什么关系.

REDUCED_REDUNDANCY因为S3将数据存储在较少的物理设备上,有时会降低可靠性,以换取较低的价格......而且如果出现故障,对象在统计上更有可能被S3丢失.如果S3因冗余减少而丢失对象,CloudFront将在某个时刻开始返回错误.

选择此存储类的决定性因素是对象是否易于替换.

减少冗余存储(RRS)是一种Amazon S3存储选项,通过以比Amazon S3标准存储更低的冗余级别存储非关键,可重现的数据,使客户能够降低成本.它提供了一种经济高效的高可用性解决方案,用于分发或共享在其他地方持久存储的内容,或用于存储缩略图,转码媒体或其他易于复制的处理数据.

https://aws.amazon.com/s3/reduced-redundancy/

STANDARD_IA(不经常访问)由于不同的原因而更便宜:存储节省被检索费用抵消.如果每月下载一次以上的对象,则合并费用将超过费用STANDARD.它适用于不经常访问的对象.由于CloudFront具有多个边缘位置,每个边缘位置都有自己独立的缓存,²对象是否"当前存储在"CloudFront中不是一个简单的是/否答案的问题.也不可能通过指定大Cache-Control: max-age值来"游戏系统" .CloudFront对其缓存存储不收取任何费用,因此只有在指定的到期时间之前才能从缓存中清除对象是明智的.实际上,轶事观察证实了文档的内容,即由于相对缺乏"流行度",有时会从CloudFront中清除对象.

选择此存储类的决定性因素是增加的数据传输(检索)费用是否足够低,以证明它们抵消的存储费用节省是合理的.除非预期每月下载的对象少于一次或两次,否则此存储类不会节省成本.

标准/不经常访问应该保留给你真正不常需要的东西,比如tarball和数据库转储以及在第一次访问后不太可能被审查的图像,例如(从我的世界借用一个例子)证明 - 购买/收据由客户扫描并提交以获得折扣索赔.退税一旦获得批准,我们就不太可能再次查看该收据,但我们确实需要将其存档.您好,Standard_IA.(请注意,S3在文件存储30天后,使用存储桶上的生命周期策略)自动执行此操作.

标准 - IA非常适合长期文件存储,来自同步和共享的旧数据,备份数据和灾难恢复文件.

https://aws.amazon.com/s3/faqs/#sia

旁注:节省一些存储成本的另一种机制是gzip -9存储和设置之前的内容Content-Encoding: gzip.我已经使用S3多年来一直这样做了,我还在等待我的第一张支持票来报告无法处理它的浏览器.即使是据称已被压缩的内容(例如.xlsx电子表格)也会缩小一点,而您挤出的每个字节意味着存储和下载带宽费用会略微降低.

从根本上说,如果您的内容可以轻松更换,例如您仍然拥有原始内容的已调整大小的图片......或者可以从源数据轻松重新运行的报告......或其他地方备份的内容(AWS基本上始终是我的首选云端服务,但我的S3资产备份存储在另一个云提供商的存储服务中,例如)...然后减少冗余是一个不错的选择.


¹ REDUCED_REDUNDANCY有时 2016年底仅在某些地区更便宜.在此之前STANDARD,由于2016年11月宣布的S3价格下降,价格低于,但奇怪的是有竞争力的定价世界的奇怪怪癖,在一些AWS区域中,STANDARD存储类是现在稍不是昂贵的REDUCED_REDUNDANCY("RRS").例如,在us-east-1中,标准从0.03美元/ GB降低到0.023美元/ GB,但RRS保持在0.024美元/ GB ...... 没有明显的理由在该地区使用RRS.定价页面的结构给人的印象是,RRS可能不再被AWS视为当前一代产品.事实上,这是一个老产品比都STANDARD_IAGLACIER.它不太可能完全被弃用或消除,但如果它不再是其主要产品之一,它们可能不会倾向于将其成本降低到与其他存储类别对齐的程度.

² "CloudFront有多个边缘位置,每个都有自己独立的缓存"仍然是技术上真实的陈述,但CloudFront悄然开始推出,然后在2016年底宣布了一些重大的架构变化,引入了区域边缘缓存.从某种意义上说,现在,全球边缘缓存是独立的"不太真实".它们仍然是,但它没有什么区别,因为CloudFront现在是一个双层网络,全局(外层)边缘节点有时从区域(内层)边缘节点获取内容,而不是直接从原点获取内容服务器.这应该会增加对象被认为是"在"缓存中的可能性的影响,因为外层中的缓存未命中可能会被内层转换为命中,这也被报告具有更多可用缓存存储空间比部分或全部外层.从外部观察中尚不清楚这对S3起源的命中率有多大影响,因为文件表明区域边缘不用于S3(仅限定制起源),但似乎不太明确这普遍适用特别是随着Lambda @ Edge的推出.这可能很重要,但在撰写本文时,我认为它不会对我对此处提出的问题的答案产生任何实质性影响.


是的,IA和cloudfront似乎是一场灾难.
推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有