2011-02-22 42 views
1

确定是否扩大或缩小我正在运行的基于云的Web服务器的数量,有什么好的经验法则?除了请求执行时间,处理器利用率,可用内存和每秒请求数之外,还有其他度量标准是否应该针对此目的进行监控?是否应该使用加权平均值,标准偏差或其他计算来确定放大或缩小比例?最后,是否有任何特定值最适合确定何时添加或减少服务器实例?用于确定Web服务器向上和向下缩放的经验法则?

+0

大多数这些东西很大程度上取决于您的应用程序的体系结构。 – mellamokb 2011-02-22 23:41:34

+0

非常真实,我不会使用术语“最佳实践”,而是要编辑并更改为“经验法则”。另外,我将“请求执行时间”添加到可能的度量标准中。 – DrewF 2011-02-23 00:49:06

回答

1

你的问题现在是一个热门研究领域。但是,云服务提供商可以通过不同的方式使网络服务器利用率自动化。有关详细信息,它是如何工作的?哪些指标会影响规模:您可以浏览一下paper

亚马逊已经宣布Elastic Beanstalk,它允许您将应用程序部署到Amazon的EC2(弹性计算云),并通过启动或终止服务器实例来扩展或缩减应用程序。使用Elastic Beanstalk不需要额外的成本;您需要为您使用的实例收费。

此外,您可以检查Amazon AWS提供的Auto Scaling

自动缩放,您可以按照您 定义条件自动调整你的 的Amazon EC2容量高达 或下跌。借助Auto Scaling,您可以确保您使用的Amazon EC2 实例的数量在需求峰值期间无缝地增加 ,从而在需求暂停期间自动增加 ,并在需求暂停期间自动减少 ,从而最大限度地降低成本。 Auto Scaling是 特别适合于每小时使用 应用程序,或每周使用 或使用每周可变性的应用程序。 Auto Scaling由亚马逊 CloudWatch支持,并且在 之外支付额外的费用。亚马逊 CloudWatch费用。

我建议您阅读Amazon AWS的详细信息,以了解他们的系统如何利用Web服务器的扩展和缩减。

3

这个动态分配计算实例的问题带回了我在工程学校控制系统类的记忆。看来我们应该能够应用经典的数字控制系统算法(认为PID环路和Z变换)来扩展服务器。旋转服务器实例与将发动机节气门的步进马达移动一个缺口相似,以响应于增加的负载而增加燃料和氧气速率。响应速度太慢,性能很差(过阻尼),太快,系统变得不稳定(欠阻尼)。

在计算域和物理域中,目标都是让资源匹配负载。好消息是计算系统是更容易处理的控制系统之一,因为拥有太多资源不会导致不稳定;它只是花钱,就像在一个有电阻器的系统中发电一样,以消除多余的电量。

很高兴看到基本面再次出现!我们了解到这一切是有原因的。

相关问题