【发布时间】:2014-05-26 14:05:19
【问题描述】:
众所周知,云提供了出色的可扩展性。问题是 - 云如何在不知道其架构的情况下扩展我的 Web 应用程序?
例如,我有一个每秒访问 20000 次的数据库。数据存储在硬盘上,无法处理这么多的请求。如果我将数据存储在集群中,我会将表的一部分保存在不同的服务器上(或在许多服务器上复制数据),这样每个硬盘驱动器就不会收到这么多的请求。云如何解决这样的问题?
【问题讨论】:
标签: cloud scalability
众所周知,云提供了出色的可扩展性。问题是 - 云如何在不知道其架构的情况下扩展我的 Web 应用程序?
例如,我有一个每秒访问 20000 次的数据库。数据存储在硬盘上,无法处理这么多的请求。如果我将数据存储在集群中,我会将表的一部分保存在不同的服务器上(或在许多服务器上复制数据),这样每个硬盘驱动器就不会收到这么多的请求。云如何解决这样的问题?
【问题讨论】:
标签: cloud scalability
答案其实很简单:“云”不知道该怎么做。 这是您必须从一开始就设计到您的应用程序中的东西。
【讨论】:
在 IaaS 上,我想这是你应该注意的事情。但是,在 PaaS 上,您可以根据某些参数(例如您收到的请求数量)自动放大/缩小。这个doc 解释了它是如何在特定的 PaaS 上工作的。
【讨论】:
如果您使用 AWS 等公共云或 Eucalyptus 等本地解决方案,您将拥有名为 CloudWatch 的云资源监控选项。借助 CloudWatch,您可以定义首选数量的 disk I/O 和 Load Balancing 指标。
此外,您可以添加Cloud Alarms 以根据这些指标触发某些缩放事件,以确保您的应用程序的高可用性。
【讨论】: