【问题标题】:What is the best solution making global service for S3 and EC2为 S3 和 EC2 提供全球服务的最佳解决方案是什么
【发布时间】:2015-05-25 22:29:51
【问题描述】:

我正在开发与后端服务器(S3 - 文件服务器,EC2 - 应用程序服务器)通信的全球移动服务 但我不知道需要多少 s3 和 ec2 以及我应该在哪里启动它们。 所以我想了解以下内容

  1. 我计划在俄勒冈州安装 S3。如您所知,CloudFront 是快速获取图像的好解决方案,但我要解决的问题是上传。我想了2个解决方案。第一个解决方案是使用 Put 方法到 CloudFront,通过 CloudFront 将文件上传到 S3。第二种解决方案是在不同区域安装多个 S3。哪个解决方案更好?

  2. 现在我只在一个 EC2 中开发应用程序服务器。我可能需要为全球服务安装几个 EC2。但我不知道如何让最终用户连接到几个 EC2 的特定 ec2。你能解释一下吗?

谢谢

【问题讨论】:

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


    【解决方案1】:

    我觉得你对 S3 的理解有点不对。

    您不会也不应该为您所描述的目的创建特定于“地理”的 S3 存储桶。

    如果您使用该服务通过纯 HTTP 传输图像,那么您可以在任何地方创建存储桶,然后使用 Amazon Cloudfront Distribution 作为“前端”,它将为您的 Geo 提供全球大约 40 个边缘位置-优化。

    更相关的边缘位置将用于世界各地的每个用户,然后他们将从您的 S3 存储桶请求图像并根据您的元设置存储它。 (根据我的经验,通常情况下,即使您将过期期限设置为月/年,低流量网站也大约每 24 小时发生一次。

    您也不会“挂载”S3。您只需创建一个存储桶,您不应该创建多个存储相同数据的存储桶。

    …………

    对于您的第二个问题,关于为 EC2 创建“全球服务”,您希望实际实现什么。

    网络自然是全球性的。您的用户是否会因为额外的 200 毫秒延迟而烦恼?

    您并没有真正描述您的服务将做什么,但一种方法是在俄勒冈州完成您的所有计算,然后在不同地区创建缓存服务器,例如 Varnish。您可以使用 Route53 进行路由,也可以利用 ELB。


    我的建议是停止你正在做的事情,并从俄勒冈州启动一切。 “网络”已经是“全球性的”,我认为在达到规模之前你不需要担心诸如此类的问题。在这一点上,我将假设您可以聘请某人为您解决此问题。听起来你有预算……

    【讨论】:

    • 感谢您的建议,我真正想做的是提高上传、下载和请求到 EC2 的速度……我知道云前端会做什么,网络已经是全球性的,但正如您所知,如果有地理上更近的服务器(s3或ec2),请求和响应速度会更快。反正因为有云端,我不用担心下载但问题是上传
    • 实际上,我尝试通过 CloudFront 上传到 s3 oregon。但是速度很慢……不知道为什么会出现这个结果和下载不一样我想知道的是如何提高全球服务的请求和响应速度……我的意思是针对世界各地的用户
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-01
    • 1970-01-01
    相关资源
    最近更新 更多