确定是否扩大或缩小我正在运行的基于云的Web服务器的数量,有什么好的经验法则?除了请求执行时间,处理器利用率,可用内存和每秒请求数之外,还有其他度量标准是否应该针对此目的进行监控?是否应该使用加权平均值,标准偏差或其他计算来确定放大或缩小比例?最后,是否有任何特定值最适合确定何时添加或减少服务器实例?用于确定Web服务器向上和向下缩放的经验法则?
回答
你的问题现在是一个热门研究领域。但是,云服务提供商可以通过不同的方式使网络服务器利用率自动化。有关详细信息,它是如何工作的?哪些指标会影响规模:您可以浏览一下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服务器的扩展和缩减。
这个动态分配计算实例的问题带回了我在工程学校控制系统类的记忆。看来我们应该能够应用经典的数字控制系统算法(认为PID环路和Z变换)来扩展服务器。旋转服务器实例与将发动机节气门的步进马达移动一个缺口相似,以响应于增加的负载而增加燃料和氧气速率。响应速度太慢,性能很差(过阻尼),太快,系统变得不稳定(欠阻尼)。
在计算域和物理域中,目标都是让资源匹配负载。好消息是计算系统是更容易处理的控制系统之一,因为拥有太多资源不会导致不稳定;它只是花钱,就像在一个有电阻器的系统中发电一样,以消除多余的电量。
很高兴看到基本面再次出现!我们了解到这一切是有原因的。
- 1. 缩放和方向服务
- 2. 向上或向下缩放图像?
- 3. 如何确定Web应用程序的向上/向下延迟
- 4. 301重定向Zeus web服务器
- 5. Azure平台:向上和向下缩放实例
- 6. 向上方向缩放div,而不是向下?
- 7. REST风格的Web服务经验法则
- 8. 如何在Linux服务器(终端)上向上/向下滚动?
- 9. 限制Zeus Web服务器上重定向的次数
- 10. Zeus服务器不上的RewriteCond HTTP_USER_AGENT重定向规则
- 11. 自顶向下的Web服务和自下而上的Web服务有什么区别?
- 12. URL重定向问题不重定向在服务器上
- 13. cakePhp重定向和身份验证在服务器上不起作用
- 14. web服务单向和新SPSite的(myUrl)
- 15. HTML图像地图是否随图像向上/向下缩放?
- 16. 正确使用向上和向下键来检查向上和向下的箭头
- 17. 向Websphere服务器添加新的Web应用程序上下文
- 18. jquery sticked向上和向下箭头向上和向下
- 19. Codeigniter无法在远程服务器中正确重定向
- 20. MouseWheel,确定向上和向下滚动事件
- 21. Spring Web服务:重定向Web服务请求
- 22. 如何将Web服务器重定向到特定的URL?
- 23. Nginx规则重定向一个特定的服务器名称
- 24. ASP.NET Fire和Forget(单向)Web服务
- 25. 向后兼容性和Web服务
- 26. Codename One - 如何使用CN1 Web服务向导向现有Web服务
- 27. 正则表达式的重定向问题(切诺基Web服务器)
- 28. 根据位置使用nginx重定向到Web服务器
- 29. 使用Scriptaculous缩放元素向上
- 30. 向下和向上事件
大多数这些东西很大程度上取决于您的应用程序的体系结构。 – mellamokb 2011-02-22 23:41:34
非常真实,我不会使用术语“最佳实践”,而是要编辑并更改为“经验法则”。另外,我将“请求执行时间”添加到可能的度量标准中。 – DrewF 2011-02-23 00:49:06