横向扩展如何在Azure应用服务中工作

时间:2016-11-13 22:44:27

标签: azure azure-web-sites azure-web-app-service azure-app-service-plans

我试图围绕Azure App Service计划和Azure App Services的概念,但没有运气。

我的理解是,应用服务计划定义了容量和定价,分配给特定应用服务计划的所有应用将共享相同的资源,是吗?

如果这是正确的,那么扩展的好处是什么?如果扩展将创建更多相同应用的实例,最终将在同一个应用服务计划上托管(共享相同的资源)?

我几乎阅读了有关Azure应用服务计划和应用服务的所有官方和非官方文档,但无法找到这个问题的答案,他们都说扩展正在应用程序级别(而不是应用程序服务)计划)并同时说分配到同一个应用服务计划的应用实际上共享相同的资源,那么横向扩展功能的好处是什么?

此致

3 个答案:

答案 0 :(得分:19)

  

我的理解是应用服务计划定义了容量和   定价,分配给特定应用服务计划的所有应用都将   分享相同的资源,是吗?

  

如果这是正确的,那么扩展的好处是什么?如果   向外扩展将创建更多同一应用程序的实例   将托管在相同的应用服务计划上(共享相同的服务计划)   资源)?

没有人强迫您将所有应用放在同一个应用服务计划中。创建应用程序时,您将其放入某个应用程序服务计划中。该(并且只有那个)应用服务计划上的所有应用程序将共享资源,但您可以创建许多应用服务计划 此外,当您向外扩展时,您将创建托管您的应用程序的VM的更多PaaS实例,因此当您向外扩展时,您没有在同一个IIS中获得另一个应用程序池,而是在另一个VM上的另一个IIS上获得另一个应用程序池。

编辑:为了澄清评论,应用服务计划是安装了IIS的Windows VM的集合。分配给该应用服务计划的所有应用程序都托管在这些VM的所有实例上,当您向外扩展或向上扩展时,您可以更改这些VM的数量或容量。
没有临时的应用服务计划。 您为服务计划付费,而不是为应用付费。 应用程序不需要任何费用,他们只是消耗服务计划上的资源,即“吃钱”的服务计划。 You are getting billed according to the Service Plan tier and scale
Pricing is based on the size and number of VM instances you run.

答案 1 :(得分:6)

据我所知,横向扩展会创建Web应用程序的多个副本,并添加负载平衡以自动在它们之间分发请求。而且您不需要自己单独配置负载平衡。

假设您创建了一个网站(带有IIS的Windows服务器),那么您的网站将拥有应用程序池,用于定义您网站的可用资源。每个实例都可以处理有限数量的请求,为了减少响应时间,您可以将网站扩展到多个实例,然后每个Web服务器可以分割工作负载。有关详细信息,您可以参考Scaling Up and Scaling Out in Windows Azure Web Sites和此tutorial以更好地了解Azure Web App自动扩展。

答案 2 :(得分:0)

正如@ 4c74356b41所说,当你扩展时,你将获得更多的物理资源(即具有更多计算,内存和存储的VM)。此外,根据Azure文档进行的一项更正,横向扩展将影响应用服务计划中的所有应用。请参阅以下链接,注意事项是

"缩放设置只需几秒钟即可应用并影响App Service计划中的所有应用。它们不要求您更改代码或重新部署应用程序" - https://azure.microsoft.com/en-us/documentation/articles/web-sites-scale/