在 Windows Azure 网站中进行纵向扩展和横向扩展
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Byron Tardif 撰写。
当您开始一个新的 Web 项目,或者刚刚开始开发一般的网站和应用程序时,您可能希望从小处着手。但是,您可能不会停滞不前。在概念证明阶段,您可能不希望在新的 Web 场上耗费资源,但随着事业不断发展,您无法使用一小台服务器来实施大型市场营销活动。在 Windows Azure 网站的云中进行开发和部署时也一样。
在本博客文章中,我将向您介绍您可以采用的开发、测试和实施方式,同时控制好预算的时间和成本。
Windows Azure 网站中的标准、免费和共享模式
部署网站时最重要的注意事项之一是为您的网站选择合适价位的平台。一旦您完成开发和测试周期,此网站便是贵公司的网站,或者是一个重要的新数字市场营销活动或业务线应用程序。因此,您要确保您的网站根据业务需求可用且可响应,同时不超出预算。
您的选择取决于多种因素,如:
· 您计划托管多少个站点?例如,数字市场营销活动可能包括您使用的每个服务的社交媒体页,以及每个目标市场的不同主页。
· 您期望网站的受欢迎程度如何? 何时流量水平会更改?您的评估可能基于业务线应用程序的员工数量,或者营销网站的 Twitter 粉丝和 Facebook 爱好者的数量。您可能还期望流量能够因季节性因素、商务拓展活动(如社交媒体活动)和广告而有所差异。
· 这些站点将使用多少资源(CPU、内存和带宽)?
Windows Azure 网站的好处之一就是,将 Web 应用程序和网站投入生产时您不需要回答这些问题。使用管理门户中提供的伸缩选项,您可以根据用户需求和业务目标实时地伸缩您的网站。
Windows Azure 网站中的站点模式
Windows Azure 网站 (WAWS) 提供 3 种模式:标准、免费和共享。
其中每种模式(标准、共享和免费)均提供不同的配额,用于控制您的站点可以使用的资源量,并提供不同的伸缩能力。下图汇总了这些配额。
标准模式和服务级别协议 (SLA)
标准模式在专用实例上运行,因此不同于购买 Windows Azure 网站的其他方式。此外,该模式对 CPU 使用率没有限制,并且在 3 种模式中的存储量最大。请参阅上表了解详细信息。
标准模式还有一些值得一提的重要功能:
· 没有数据输出带宽限制 – 站点上的前 5 GB 出站数据免费提供,额外带宽按照“即付即用”费率定价。
· 自定义 DNS 名称 – 免费模式不允许使用自定义 DNS。标准模式允许使用 CNAME 记录和 A 记录。
标准模式支持每月 99.9% 的企业级 SLA(服务级别协议),即使站点只有一个实例也是如此。Windows
Azure 网站可以在单个实例站点上提供此 SLA,因为我们的设计包括实时站点配置功能。配置发生在后台,而不需要更改您的站点,并且对任何站点访问者都是透明的。这样即可消除伸缩均衡中可用性方面的顾虑。
共享模式和免费模式
简而言之,共享模式和免费模式不提供标准模式的伸缩灵活性,并且它们有一些重要的限制。
免费模式与免费或共享模式下的其他站点共享计算资源运行,并且对该站点(以及订阅中的其他免费站点)在每个配额间隔可以使用的 CPU 时间量设置了上限。达到该限制后,该站点(以及订阅中的其他免费站点)将停止返回内容/数据,直到下一个配额间隔。此外,免费模式对站点可以向客户端提供的数据量(也称为“数据出站”)也设置了上限。
正如其名称所示,共享模式也使用共享计算资源,并且也具有 CPU 限制(尽管比免费模式高),如上表所述。共享模式还允许 5 GB 出站数据,如果超出此限制,则按“即付即用”费率计费。
因此,可能由于上述限制,免费模式和共享模式都不是适用于您的生产环境的最佳选择,但它们还是有用的。免费模式非常适用于试用和了解 Windows Azure 网站,例如:了解如何设置发布配置、连接到 Visual Studio,或者使用 TFS、Git 或其他部署工具部署。相比于免费模式,共享模式具有额外的功能,因此非常适用于在有限受控的负载下进行开发和测试您的站点。对于更重要的生产环境,标准模式可以提供更多服务。
伸缩操作、代码和用户会话/体验
操作纵向扩展站点或横向扩展站点可以提高用户体验, 并且伸缩操作对现有用户会话没有任何影响。
此外,每次伸缩操作都很迅速(通常几秒钟内即可完成),并且不需要更改站点的代码,也不需要重新部署站点。
接下来,我们将讨论“纵向扩展”和“横向扩展”的含义。
Windows Azure 网站伸缩动态
Windows Azure 网站提供了多种方式伸缩您的网站, 可以使用管理门户完成这些操作。如果您正在通过 Microsoft Visual Studio 2012 管理站点,则也可以使用这些操作,如我们的服务文档中详细说明。
纵向扩展
纵向扩展操作类似于将您的非云网站移动到更大的物理服务器上。因此,当您的站点达到配额,系统通知您已超出现有模式或选项时,则有必要考虑进行纵向扩展。此外,纵向扩展几乎可以在任何站点上进行,不必担心多实例数据一致性的影响。
Windows Azure 网站中纵向扩展操作的两个示例如下所示:
· 更改站点模式:例如,如果您选择标准模式,您的网站对 CPU 使用率没有任何配额限制,并且出站数据只需支付超出套餐所含 5 GB/月的出站数据的那部分。
· 标准模式中的实例大小:在标准模式中,Windows Azure 网站允许选择不同的实例大小:小型、中型和大型。这也类似于移动到更大的物理服务器,CPU核数和内存量越来越多:
o 小型:1 个核,1.75 GB 内存
o 中型: 2 个核,3.5 GB 内存
o 大型: 4 个核,7 GB 内存
横向扩展
横向扩展操作相当于创建您的网站的多个副本,并添加一个负载平衡器以在副本之间分配处理。当您在 Windows Azure 网站中横向扩展某个网站时,不需要单独配置负载平衡,因为平台已提供此配置。
要在 Windows Azure 网站中横向扩展您的站点,如果是共享模式,您需要使用实例计数滑块在 1 到 6 之间更改实例计数;如果是标准模式,则在 1 到 10 之间进行更改。这将生成您的网站的多个运行副本,并且自动处理负载平衡配置,以在所有实例之间分配传入的请求。
要从横向扩展操作中受益,您的站点必须为多实例安全型。编写多实例安全站点超出了本文章的范围,请参考适用于 .NET 语言的 MSDN 资源,例如http://msdn.microsoft.com/zh-cn/library/3e8s7xdd.aspx
可以在一个网站中组合执行纵向扩展和横向扩展操作,从而提供混合缩放。有关多实例站点的相同考量也将适用于这种情况。
Windows AzurePowerShell 中的自动缩放和缩放
在本博客文章中,我介绍了 Windows Azure 网站中纵向扩展和横向扩展所涉及的概念,着重于通过管理门户手动执行这些任务;Visual Studio 中也提供了类似的手动设置。
我们还向 Windows Azure 网站添加了自动缩放功能,允许根据响应需求在您的网站上对纵向扩展/横向扩展的设置进行无人参与的更改。
此外,Windows Azure PowerShell 还允许执行某些缩放操作,以及对您的站点和订阅实施多种控制。
最后的思考
Windows Azure 网站允许您以较低的成本(甚至零成本)开发、部署和测试网站或 Web 应用程序,同时无缝伸缩该站点,直至形成更适合生产的配置,然后以经济高效的方式进一步伸缩。
在本博客文章中,我着重介绍了您网站中的纵向扩展和横向扩展功能,但是请记住,您的站点可能只是使用其他组件(如数据库、数据源、存储或第三方 Web API)的更复杂的应用程序的一部分。每个组件都具有自己的伸缩操作,评估您的伸缩选项时应将其考虑在内。
当然,伸缩网站将会影响成本。有助于评估您的成本以及指定伸缩操作将对您的成本产生的影响的简单方法是使用Azure 定价计算器。
本文翻译自:
在 Windows Azure 网站中进行纵向扩展和横向扩展的更多相关文章
- 探索 Windows Azure 网站中的自动伸缩功能
去年10月,我们发布了若干针对 WindowsAzure平台的更新,其中一项更新是添加了基于日期的自动伸缩调度支持(在不同的日期设置不同的规则). 在这篇博客文章中,我们将了解自动伸缩的概念,并 ...
- 禁用 Windows Azure 网站中的 ARR 实例关联
编辑人员注释: 本博客文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写. 在 Windows Azure 网站中设置网站的多个实例是横向扩展网站的绝佳方式,Azur ...
- 进一步探索:Windows Azure 网站中解锁的配置选项
编辑人员注释: 本文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写. 在 Windows Azure 网站 (WAWS) 中管理网站时,许多选项可使用 Azu ...
- 在 Windows Azure 网站中配置动态 IP 地址限制
我们最近对 Windows Azure 网站进行了升级,并启用了IIS8的动态 IP 限制模块.现在,开发人员可以为其网站启用并配置动态 IP 限制功能(或简称 DIPR). 可以通过以下链接查看此 ...
- Windows Azure 网站上的 WebSocket 简介
编辑人员注释:本文章由 Windows Azure 网站团队的首席项目经理 Stefan Schackow 撰写. Windows Azure 网站最近新增了对 WebSocket 协议的支持..NE ...
- Windows Azure 网站:应用程序字符串和连接字符串的工作原理
编辑人员注释:本文章由 Windows Azure 网站团队的首席项目经理 Stefan Schackow 撰写. Windows Azure 网站上有一个方便的功能,即开发人员可将 Azure 中的 ...
- Windows Azure 网站上的 WordPress 3.8
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 和 Windows Azure 网站开发人员体验合作伙伴共同撰写. WordPr ...
- Windows Azure 网站的 IP 和域限制
编辑人员注释:本文章由 Windows Azure 网站团队的首席项目经理 Stefan Schackow 撰写. 配置 Azure 网站 (WAWS) 的 IP 和域限制一直是用户最迫切希望我们提供 ...
- Windows Azure 网站 (WAWS) 中的服务器端包含 (SSI)
编辑人员注释:本文章由 Windows Azure 网站团队的项目经理Erez Benari 撰写. Windows Azure 网站客户普遍关心的一个问题是关于我们对服务器端包含(Server ...
随机推荐
- 環氧樹脂對COB的影響
COB的封膠一般使用單液 Epoxy(環氧樹脂),也可以使用雙液(Epoxy+硬化劑),雙液的成品品質可靠度雖然比較高,但是保存及維護非常麻煩,所以一般的 COB 都還是採用單液的製程. 其次是如何控 ...
- linux下so动态库一些不为人知的秘密(中二)
继续上一篇< linux下so动态库一些不为人知的秘密(中) >介绍so搜索路径,还有一个类似于-path,叫LD_RUN_PATH环境变量, 它也是把路径编译进可执行文件内,不同的是它只 ...
- poj3624 简单的01背包问题
问题描述: 总共有N种宝石供挑选,宝石i的重量为Wi,吸引力为Di,只可以用一次.Bessie最多可负担的宝石手镯总重量为M.给出N,M,Wi,Di,求M. 非常标准的01背包问题.使用了优化的一维数 ...
- Android 指定纯色图标的颜色
最近项目用到了系统图标,但是设计师设计的颜色却与系统图标不一样: 如果每张图片都要用Photoshop进行颜色填充势必增加了工作量,而且不灵活,占资源: 例如同一张图片,希望点击的时候改变颜色 ...
- fafu 1568 Matrix(二分匹配+二分)
Description: You are given a matrix which <= n <= m <= ). You are supposed to choose n el ...
- bzoj 维护序列seq(双标记线段树)
Seq 维护序列seq Time Limit: 30 Sec Memory Limit: 64 MBSubmit: 4184 Solved: 1518[Submit][Status][Discus ...
- 7-05. 魔法优惠券(25) (数学 ZJU_PAT)
题目链接:http://www.patest.cn/contests/ds/7-05 在火星上有个魔法商店,提供魔法优惠券.每一个优惠劵上印有一个整数面值K,表示若你在购买某商品时使用这张优惠劵.能够 ...
- 《Effective C++》:条款46-条款47
条款46请输入转换的时候,需要定义非模板成员函数 条款47请使用traits class表现类型信息 条款46:须要类型转换时请为模板定义非成员函数 条款 24提到过为什么non-member函数才有 ...
- 自动工作负载库(Automatic Workload Repository,AWR)
自动工作负载库(Automatic Workload Repository,AWR)AWR的由来: 10g之前的oracle:用户的连接将产生会话,当前会话记录保存在v$session中:处于等 ...
- Reverse Key Indexes反向索引
Reverse Key Indexes反向索引A reverse key index is a type of B-tree index that physically reverses the by ...