百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

“我将 AWS 的数据传输成本,降低了 99%!”

ninehua 2025-03-01 14:56 1 浏览

本文作者发现,在 AWS 上传输数据有一种方法,可大幅降低传输成本——利用 S3:“如果成本是你最关心的问题,这个方法可以有效降低 99% 以上的成本。”

原文链接:https://www.bitsand.cloud/posts/slashing-data-transfer-costs/

作者 | Daniel Kleinstein
翻译 | 郑丽媛
出品 | CSDN(ID:CSDNnews)

在 AWS 上不小心花太多钱的方式有很多,其中最简单的一种就是不小心传输了数据。截至目前,AWS 对数据传输的收费标准如下:

(1)从 AWS 到公共互联网的数据传输费用从 0.09 美元/GB(弗吉尼亚州北部)到 0.154 美元/GB(开普敦)不等,因此每 1TB 的数据传输费用约为 90-154 美元。

(2)从一个 AWS 区域到另一个 AWS 区域的数据传输费用从 0.02 美元/GB 到 0.147 美元/GB 不等,因此从未离开 AWS 网络的每 1TB 数据的传输费用约为 20-147 美元。

在这两种传输中,你只需要支付出口费用——也就是说,你只要为离开 AWS 区域的数据付费,无需支付传入数据的费用。现在,让我们来看更棘手的数据传输方式:

(3)在同一 AWS 区域内可用区之间的数据传输,每个方向(不论是传入还是传出)的成本为 0.01 美元/GB,这一定价在所有地区都是一样的。因此,在两个相同区域的可用区之间传输 1TB 数据时,出口和入口的费用分别为 10 美元和 10 美元,总计 20 美元。

以上价格在所有主流云提供商之间都差不多。数据传输的价格很容易累加,对云提供商来说这是一个利润极高的收入来源——甚至由于利润很高,Cloudflare 推出了与之竞争的 R2 存储,其特点就是零出口费,同时还发表了一些激烈言辞,抨击 AWS 收取出口费用。

一般来说,AWS 推荐在多个可用区中设置资源,这是确保可靠性和可用性的最佳做法。但这种方式很容易导致资金流入跨区成本的“熔炉”中:任何涉及在不同可用区资源之间发送数据的应用程序,都会产生此类费用。

所以,我们能鱼与熊掌兼得吗?换句话说,我们能否在建立跨可用区基础设施的同时,避免支付跨可用区的数据传输费用?

使用 S3 避免数据传输成本

S3 有一个重要特性——S3 中的大多数存储类,都以区域粒度而非可用区粒度来存储它们的存储桶。AWS 会在后台该区域内至少三个可用区内复制这些数据,这也就是 S3 具有超高持久性和可用性的原因之一。

(注:有两种存储类别,S3 One Zone- infrequency Access 和新推出的 S3 Express One Zone,这两种都只将数据存储在单个可用区中。二者之中,你支付的存储费用可能较低,但要以可用性为代价。例如,S3 One Zone-Infrequent Access 的成本为 0.01 美元/GB,其可用性为 99.5%,而 S3 Infrequent Access 的成本为 0.0125 美元/GB,但其可用性为 99.99%。)

这意味着,标准 S3 存储桶中的数据对其所在区域的所有 AWS 可用区都“平等”可用——对于 S3 来说,从 us-east-1a 或 us-east-1b 下载数据并无区别。

不过,S3 还有一个重要特点:对于标准存储类别,从 S3 下载数据是免费的,只有在区域之间或到公共互联网下载数据时才会产生标准传输费用。此外,任何存储类别上传至 S3 也是免费的!(在数据传输方面,你发出的 S3 API 请求会产生费用,但相对较少)

现在,假设我想在 us-east-1a 或 us-east-1b 的两个 EC2 实例之间传输 1TB 的数据。从上文可以看到,如果我直接传输数据,将花费 20 美元。但如果我从一个实例上传数据到 S3,然后从另一个实例下载呢?

结果是:上传免费,下载也免费,但 S3 存储不是免费的,每月费用为 0.023 美元/GB,即 23 美元/TB。另外,这是以小时为单位收费的,因此我们可以设计我们的上传/下载,使数据在 S3 中的停留时间不超过一小时。假设一个月有 720 个小时,这意味着我们需要支付 23 美元的 1/720,约合 0.03 美元。(记住,我们要在使用完毕后删除存储!)

这样算下来,这次数据传输的费用仅为 0.03 美元,而不是 20 美元——非常棒!如果用具体数字来表示:假设数据传输速率低于一小时,那么我们已经将数据传输费用从 0.02 美元/GB(出口 0.01 美元,入口 0.01 美元),降低到了 0.000032 美元/GB,仅为原始费用的 0.15%!举个极端的例子,用这种方法传输 1PB 的数据大约只需 32 美元,而用标准方法则需要 20000 美元。

不仅如此,S3 还可以无限扩展。因此,用这种方法可以非常方便地将数据从一个 AZ(Availability Zone,可用区)复制到另一个 AZ 中的任意多个实例中,第二个 AZ 中的数千个实例也都可以下载相同的 S3 对象,且占用的时间与下载单个实例相同。S3 存储成本将保持不变,下载成本也将保持免费,这也很棒!

值得一提的是,S3 还有一个重要特性:单个对象不能超过 5TB。因此,如果使用这种方法传输超过 5TB 的文件,则需要对文件进行分片。此外,单个上传文件的大小也不能超过 5GB,如果文件大于 5GB,则需要使用多部分上传(S3 会在后台自动处理)。

演示

接下来,让我们看看实际情况,并为之惊叹。当我第一次想到这个方法时,尽管其背后的所有基本原理都很可靠,但如此大幅节约的成本还是令人难以置信——直到我在成本资源管理器中看到结果时,我才真的敢相信。

我想从一个干净的 AWS 账户开始,这样我们在检查定价时就不会有任何干扰因素。因此,我为演示的每个部分创建了两个账户:

在每个账户中:我们将设置两个 EC2 实例,一个在 us-east-1a 中,另一个在 us-east-1b 中;我们将把两个实例都放在公共子网中,这样就可以轻松地通过 SSH 进入它们;还在实例中随机生成一个 1TB 的文件,以将其传输到另一个实例中。

我们将进行以下这两个实验:

(1)在第一个实验中,我们把两个实例分别放置在两个可用区中带有私有子网的 VPC 中。我们将在实例上,连接到私有子网的接口上,设置一个 netcat 服务器。然后,一个实例将 1TB 的文件传输到另一个实例中。

(2)在第二个实验中,我们将把两个实例放在一个具有 S3 网关端点的 VPC 中,然后创建一个 S3 存储桶,一个实例将把 1TB 的文件上传到存储桶中。上传完成后,另一个实例将下载这个 1TB 文件(然后将其删除!)。

在这两个实验中,我们都将 1TB 的数据从 us-east-1a 传输到 us-east-1b 中。在此之后,我们将等待 AWS 的成本资源管理器更新产生的成本,看看这种方法是否真的有效。

结果

几个小时后,成本资源管理器更新了计费数据。对于标准的数据传输方式,我们原本预计其成本为 20 美元,但最终花费了 21.49 美元(期间,由于我不小心停止了传输,不得不重新启动,导致了部分额外成本,另外创建的文件在技术上为 1024GB,因此基本价格为 20.48 美元):

我们真正想看的实验是基于 S3 的数据传输,我们预计其存储成本仅为几美分,实际结果如下:

只要 8 美分!!!让我们深入了解一下 S3 存储成本的详细情况,同时扩大我们的筛选范围,确保不存在数据传输费用:

的确,我们可以看到没有数据传输成本!但有些奇怪的是,唯一可用的 S3 使用类型与存储无关.....让我们筛选 S3 并按使用类型分组:

实际上,我们根本不需要支付任何存储费用。按理说,我们需要对 S3 请求收费:PUT 请求每 1000 次收费 0.005 美元,GET 请求每 1000 次收费 0.0004 美元,按照上传和下载 1TB 文件所需的请求量相加,得出最终费用。但令人震惊的是,这个过程真的没有存储成本——就好像 S3 不收取任何临时存储费用一样?这很不像 AWS,但我不知道该如何解释。我本来怀疑可能是 S3 免费层隐藏了成本,但我的 S3 存储免费层完全不受实验影响,没有消耗任何成本。

不管怎样,我们已经证明了这个方法是有效的。最后,让我们总结一下。

结论

在幕后,AWS会自动在可用性区之间复制S3数据——不管这对AWS来说可能会产生什么费用,都会被隐藏在你为数据支付的存储成本中。因此,在最根本的层面上,这种方法正在解锁免费的跨区成本——因为在你将数据上传到 S3 时,实际上就已经支付了跨区成本!事实上,如果你将数据一直保留在 S3 中,最终你将支付比跨区成本更多的费用,但通过立即在传输后删除它,你就可以节省 99% 的成本。

这种方法有一些明显的缺点:它不能直接替代现有的数据传输代码,它的延迟可能也比直接传输要高得多。但如果成本是你最关心的问题,那么这种方法可以有效降低 99% 以上的成本。

我真心希望这个方法对你有用,我认为它说明了在 AWS 中你可以节省多少成本——有这么多的服务,这么多的功能,这么多的价格点,几乎总有更多节省的空间。

相关推荐

爆料大佬曝次世代PS5开机画面 可信度被标记为100%

索尼次世代主机PS5,一直都是玩家们注意的焦点,发布会活动最快可能在这两个月举办,近期PS5的各种传言也是满天飞。今天更是有PS5开机画面被曝出,我们一起看看吧!今日(2月10日),海外爆料大佬Sla...

一周影像资讯 | PS诞生30周年发布重大更新,MOMA任命摄影部主管

1.Adobe发布一系列photoshop更新,以庆祝PS诞生30周年第一款photoshop软件诞生于1990年2月19日,至今已30周年。为了庆祝这个生日,Adobe发布了电脑桌面版和iPa...

Nik Collection七件套2020最新版 PS神级插件 摄影师P图好帮手

NikCollection七件套,玩摄影的朋友一定不会陌生。多年前谷歌曾经收购了NikCollection,并定价499美元。2016年开始,提供给用户免费使用。去年我也给大家分享过老版本,不过后...

《地平线:零之曙光》复刻版游戏获ESRB评级,将登陆PS5/PC平台

IT之家9月19日消息,游戏媒体polygon昨日(9月18日)发布博文,报道称《地平线:零之曙光》复刻版已经获得娱乐软件分级委员会(ESRB)的新评级,该游戏将在PlayStat...

一键美颜、一键磨皮等实用的PS扩展插件

这款插件支持PSCC2015-2020,除了Windows也支持Mac电脑,接下来详细的给大家演示下如何安装和使用这款插件。插件安装教程:1、打开提供的文件夹,然后双击这个注册表。2、把文件夹“久鱼...

PS5 Pro亮相,但索尼仍在危险区 | 产品观察

作者|兰杰闫羽编辑|刘士武北京时间9月10日晚,索尼如期发布了游戏主机PlayStation5的升级版本——PS5Pro,并预计于11月7日起正式发售。在此次发布中,索尼披露了新产品的几...

PS5将在2020年末商战登场,现在PS4还有必要入手么?

近日索尼正式宣布旗下的PS5主机预计将于2020年末商战期间发售,无数玩家心中的疑惑之石终于落地了,不用再臆测PS5何时发售的同时也催生了另一个问题,那就是距离PS5还有一年多的时间里是否有必要入...

计算机编程哪家强?CCSP-2020年排行榜告诉你

近年来,计算机科学专业备受广大考生的青睐,专业录取分持续走高。主要原因是计算机科学专业不仅就业率高,而且就业待遇也排在所有专业前列。因此,这也就造成了国内每所院校基本上都开有计算机科学专业。那么,开设...

PS5被曝将于2020年发布 不支持PS4游戏

【手机中国新闻】4月11日消息,最近网上有关PS5的传闻不断放出,早前,网上曾传PS5的开发工具已经推出并分发给了许多游戏厂商,因此有部分网友认为PS5距离发布时间已经越来越近了。现在据国外业界分析...

新款沃尔沃V90 CC,是最美的瓦罐,还是卖不动的旅行车?

最近沃尔沃V90CC有了新款,分别是B5AWD智远版和B5AWD至尊版,属于中期改款,指导价是44.79万元和55.69万元。这个价格比之前2020款稍微贵了一点点。1.略有调整的外观新车采用...

开发人员称次世代PS5可以支持原生4K 60fps

来源:3DMGame最近有传闻称PS5无法达到4K60fps游戏画面,不过在最近一次对开发小组Teamkill的采访中,他们确认PS5将毫无疑问能够轻松达到4K60fps游戏画面。那么关于PS5画...

49个月销量对比:索尼PS5比微软Xbox Series S|X高117%

IT之家1月14日消息,游戏媒体vgchartz于1月12日发布博文,报道称截止2024年11月,微软XboxSeriesX|S游戏主机全球累计销量为3121万...

索尼PS5 Pro主机采用混合RDNA GPU架构,保障兼容PS5游戏

IT之家12月19日消息,索尼PlayStation5游戏主机标准和Pro版本首席架构师MarkCerny近日在PS5Pro技术研讨会上分享了一些有关该中期迭代机型的技术...

PS5定档2020圣诞季 PS4服役7年痒不痒?

定档圣诞季索尼PS5有“奇功”随着索尼PS5的上市时间信息公布之后,玩家群体变得开始躁动起来,定档圣诞季的索尼PS5游戏机,也如愿开始筹备与微软XBOX新机的正面交锋,两部主机的纸面性能不断被媒体和...

任天堂笑而不语!索尼PS5全球销量达1280万:但还是买不到

11月18日消息,市场研究机构AmpereAnalysis公布数据显示,截至今年9月底索尼PS5两个版本的全球累计销量达到1280万台,微软XboxSeriesX/S销量接近700万,而任天堂S...