0

我对亚马逊网络服务非常陌生。对于最终确定架构和制定成本计算计划的任何帮助,我将由衷地感谢。我正在为我们正在设计的动态网站设计一个基于 AWS 的解决方案。首先,我需要有 2 个高 CPU 中利用率 EC2 实例(两者都将充当 Web 服务器)、1 个用于我的数据库的高 CPU 中利用率 EC2 实例(它将是 Postgre SQL)和 1 个高 CPU 中利用率 EC2 实例作为我的数据库的只读副本。我还将拥有大量静态内容,例如图像、视频或我正在考虑使用 S3 存储桶的 .doc 文件。所以,我的网站将是一个动态+静态的网站。我期待用户从 0 快速指数级增长到每年 100 万。因此,我需要根据流量扩展我的 EC2 组合(如前所述)。我正在考虑使用 CloudFormation 堆栈来快速扩展我的部署。此外,为了有效地路由流量,我将使用单个 ELB 开始。另外,我想根据用户 ID 对我的数据库进行垂直分区。例如,一个 EC2 数据库实例上的用户 ID 1 - 2000 用户 2001 到 4000 在第二个 EC2 数据库实例上等等...我将仅自动扩展 Web 服务器 EC2 实例,而我的数据库 EC2 实例将有 100% 的正常运行时间

我的问题是:

  1. 我的 Web 服务器 EC2 实例的自动扩展策略应该是什么?当扩展如此动态时,我如何知道每月的成本是多少。我的意思是有什么方法可以预测,以便我可以进行成本收支平衡分析?
  2. 所有 EC2 实例(Web 服务器和数据库)是否都需要 EBS 支持,或者临时存储就足够了?我相信对于数据库 EC2 实例,我需要 EBS 支持。Web 服务器 Ec2 实例呢?
  3. 假设我最终扩展到 100 个 EC2 实例。只有一个 ELB 就足够了,还是我需要多个 ELB?
  4. 如何分析一个高 CPU 中利用率 EC2 实例在发生故障之前可以处理多少 HTTP 请求?
  5. CloudFront 可以用于托管这种动态+静态站点还是仅用于静态站点?

请帮助我解决这些问题,因为我对云解决方案架构一无所知...

谢谢...维克拉姆。

4

2 回答 2

1

这是我们 (RunSignUp) 撰写的关于我们如何在亚马逊上扩展的白皮书。我们的用例是处理在线比赛注册的开放,其中 50,000 名跑步者希望在 10 分钟内注册。这显示了我们如何配置所有内容,包括设置以及我们开发的一些代码。我们基本上遇到了与您相同的问题,并且没有找到任何具有如何构建可扩展应用程序以及亚马逊如何使用它来扩展的完整用例的任何内容。希望它是有帮助的。

于 2013-07-25T00:10:39.593 回答
0

快速尝试答案以帮助您入门;

  • #1太大了,不写书就无法回答,它与系统及其设计有太多关系,无法以通用的方式回答。
  • #2 你肯定会想要支持你的数据库。另一方面,Web 服务器使用临时存储可能会更好,它们越无状态/无设置,动态创建/销毁实例就越容易。
  • #3 据我所知,“附加”到单个 ELB 的机器数量没有上限。在极端负载下,如果您将站点拆分到多个负载均衡器上,您可能会遇到稍短的延迟。您会在此处找到更多可以映射到您的实际架构的信息。
  • #4 只有系统的负载测试才能告诉你这一点。
  • #5 来自Cloudfront 页面

Amazon CloudFront 可用于交付您的整个网站,包括使用全球边缘站点网络的动态、静态和流内容。

换句话说,它的架构不会阻止您在您的网站上混合静态和动态内容。

于 2013-07-22T06:56:29.410 回答