如何提高windows azure中的云服务性能?

时间:2013-02-26 08:27:12

标签: asp.net-mvc-2 azure

目前我的应用程序正在暂存环境中运行。我需要将我的应用程序发布到市场,但在此之前我想解决这个性能问题和我的应用程序详细信息,

云服务=============>美国西部

存储帐户============>美国西部

数据库服务器===========>美国中北部

VM(虚拟机)大小=====>小

这里我的云服务和存储在一个位置,数据库服务器在另一个位置。这对应用程序性能有任何影响吗?

还有一件事是在我的应用程序中使用一个Web角色和一个实例。

你建议我为改善我的应用程序性能做些什么改变?

2 个答案:

答案 0 :(得分:3)

您绝对应该将您的数据库和服务放在同一个区域。数据库性能很可能是您的性能问题,您应该将数据库尽可能地“关闭”到您的服务中。将数据库和服务放在同一个区域意味着它们位于同一个数据中心,因此位于高速主干上。单独的区域(数据中​​心)意味着您的数据必须穿越低速跨国基础设施 - 吞吐量和延迟都将受到严重影响。此外,由于数据出口费用是按地区划分的,因此您将支付从数据库到应用程序的所有流量 - 与他们在同一地区,这不会花费一分钱。

可以进行其他性能改进 - 例如,查看云服务上的CPU负载,以确定单个实例是否足够。但从数据开始。从区域亲和性开始,尽可能接近服务获取数据,同时查看缓存(数据在同一台机器上的内存中)。

答案 1 :(得分:1)

从上面的描述中,您需要先做一些事情:

  1. 确保您的数据库服务器和云服务位于同一地区(美国西部)。将云服务和数据库服务器放在不同的区域会产生一些延迟问题。
  2. 在生产环境中,您需要确保至少运行2个Web角色实例。 Windows Azure SLA不涵盖单实例Web角色,如果此单个实例因任何原因而关闭,则您的应用程序在此期间不可用。
  3. 之后,请遵循@Alexei Levenkov关于设定绩效目标的建议。