如何在 AWS 上构建可扩展的系统(使用 MySQL 后端)

如何在 AWS 上构建可扩展的系统(使用 MySQL 后端)

我正在尝试了解如何构建 Amazon Web Services 应用程序。据我所知,使用 AWS 之类的服务的全部目的是使最终的扩展更加容易,所以我正在尝试了解如何做到这一点。

我有一个实例,运行在 EBS 上(基于 EBS 的实例,不是常规实例)。我的应用程序(Django 应用程序)使用 MySQL 作为后端。

所以问题是,我应该在哪里安装 MySQL?我应该在同一个实例上安装它吗?在这种情况下,据我所知,我不能简单地从该映像创建更多服务器实例。

或者我应该简单地旋转起来其他服务器作为 DB 服务器,并以此运行?

谢谢你的帮助!

答案1

您可能想要做的是将应用程序分成离散的层。

  1. 网络服务器

  2. 应用服务器

  3. 数据库服务器

然后,随着需求的增加,每个服务器的扩展就变得容易得多。但是,这样做会增加较低级别的规模成本,因为您需要从 3 台服务器开始。如果您不将各层分开,如果您要减轻应用程序层的负载,则在启动新服务器时需要增加额外的开销,因为数据库也包括在内。

对于 MySQL 数据库,我会选择 Amazon RDS,因为它的实例类型(大部分情况下)与你自己创建的 EC2 实例相同,但它还包含备份,请参阅本公告

答案2

自己做:http://www.mysqlperformanceblog.com/2010/06/17/high-availability-for-mysql-on-amazon-ec2-part-1-intro/

或者让亚马逊为您完成:http://aws.amazon.com/rds/

如果你不得不问,那么最简单的方法可能是从 AWS RDS 开始,然后在遇到特殊需求时自己做。

答案3

你可以将它安装在任何你喜欢的地方,包括同一台机器。通过主机名连接到它,然后你以后就可以移动它了。

相关内容