0

目前我的应用程序正在登台环境中运行。我需要将我的应用程序推向市场,但在此之前我想摆脱这个性能问题,我的应用程序详细信息是,

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

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

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

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

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

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

你能建议我做些什么来提高我的应用程序性能吗?

4

2 回答 2

3

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

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

于 2013-02-26T09:09:20.517 回答
1

根据上面的描述,您首先需要做一些事情:

  1. 确保您的数据库服务器和云服务位于同一区域(美国西部)。将云服务和数据库服务器放在不同的区域会产生一些延迟问题。
  2. 在生产环境中,您需要确保至少运行 2 个 Web 角色实例。Windows Azure SLA 不涵盖单个实例 Web 角色,如果此单个实例因任何原因出现故障,则您的应用程序在此期间不可用。

之后,请遵循@Alexei Levenkov 关于设置性能目标的建议。

于 2013-02-26T09:09:40.763 回答