【问题标题】:Scalability of database on an Amazon EC2 micro instance?Amazon EC2 微型实例上的数据库的可扩展性?
【发布时间】:2013-07-15 04:23:17
【问题描述】:

我有一个使用 EC2 微实例的弹性 beanstalk 应用程序。

在 EC2 实例上我手动安装了一个 mysql 数据库。

beantalk 应用程序正在通过 localhost:3306 访问数据库。

我的问题是,如果 beanstalk 应用程序负载增加,数据库将如何扩展?我会遇到此设置的任何问题吗?我是否应该迁移我的应用程序以使用 Amazon RDS?

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-elastic-beanstalk


    【解决方案1】:

    如果您的应用程序负载增加,EC2 实例上的数据库将不会自行扩展。如果您不采取任何措施,它将失败。您所能做的就是垂直缩放。您可以拥有只读副本。 RDS 也是如此。使用 RDS,数据库服务器不会自动扩展,如果流量增加,您需要自行升级。因此,RDS 减少了您的数据库管理开销。

    【讨论】:

    • 感谢您的洞察力。对于 Amazon RDS,您说的是哪种高档?喜欢让 EC2 实例更强大吗?这不是和第一种情况下的垂直缩放一样吗?
    • 是的,它是一样的。 RDS 可以轻松维护您的数据库,而不是它实际上是由 Amazon 管理的 EC2 实例上的数据库。但是您必须在 RDS 上手动扩展 DB。
    【解决方案2】:

    您的应用程序会在微型计算机上遇到很多问题。如果这是在生产中,我建议尽快搬到一个小的地方。话虽如此,您可以使用 /etc/my.cnf 文件并在一个小实例上做一些非常棒的事情。如果/当您必须扩大规模时,这是一个很好的问题。

    运行数据库的一些好建议是在 /var/lib/mysql 上挂载一个专用的 EBS 卷,以便您可以轻松地将数据库移动到新实例。如果您遇到高流量,您可能希望实例中有足够的内存来容纳整个数据库,或者如果这不可能,您将需要优化 EBS 以满足您的 IOPS 阈值。这将为您提供在 AWS 上可以获得的最佳性能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-05
      • 2012-06-16
      • 2013-10-05
      • 2011-11-17
      • 1970-01-01
      • 2015-12-01
      • 2010-11-19
      • 1970-01-01
      相关资源
      最近更新 更多