S3与EC2访问速度(平均)

时间:2015-01-26 04:03:10

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

如果我们认为所有用户都位于同一地理区域内,并且我们从EC2实例(运行高度优化的实例类型)或S3存储桶中选择相同的位置,这将更好地服务内容...... EC2还是S3?我有一个完全由客户端驱动的网站(运行面向Javascript的客户端并且其功能集完全受限)所以我试图确定哪条路线更好。我不需要保存资产,也不需要HTTPS。我意识到我也可以考虑使用CloudFront,但我们假设我不打算将CloudFront用于此问题。

3 个答案:

答案 0 :(得分:3)

像往常一样,它取决于(tm)。 MaxCDN的Justin Dorfman,缓存传递服务wrote a good analysis of why S3 isn't the best webserver

Comparing static asset performance between S3 and a CDN

最终问题可能也不完全是负责任的 - 我建议真正的问题是,我如何才能最有效地为最终用户客户提供静态(不变)资产?它可能在“首次加载”和定期用户之间有所不同,正如您所提到的,地理组件可能会起作用。

当然,S3(或具有前端缓存的S3和适当的cache-control标头)在可维护性,可伸缩性和减少单点故障方面具有优势。

答案 1 :(得分:1)

如果你有一个静态网站(没有后端处理),那么直接从Amazon S3提供它将是:

  • 更可靠:Amazon S3是基于区域的服务,跨多个可用区域进行复制,而不是可能是单点故障的Web服务器
  • 更便宜:直接从S3服务,无需运行网络服务器
  • 易于维护:除配置安全性外,S3无需管理。

在S3存储桶中放置 Amazon CloudFront “还可以减少世界其他地方用户的延迟,因为它会在50多个边缘位置缓存内容。但是,如果您的所有用户都靠近您提供内容的AWS区域,那么收益就不会很大(例如,向北弗吉尼亚州的北弗吉尼亚州用户提供服务)。

答案 2 :(得分:0)

最佳答案取决于所需的平均和峰值带宽。如果您需要高网络带宽,EC2实例将变得非常昂贵。请具体说明您的需求。除非您拥有高流量网站,否则请使用S3。如果您的流量很高,这意味着您有收入/预算,然后花时间评估最合适的解决方案。例如,S3是容错的。对于EC2,您将需要一个负载均衡器,自动缩放组,多个EC2实例,一个DevOps计划来更新这些实例启动的图像等。