Azure Web应用程序具有缓慢且不温暖的负载(30秒+负载)

时间:2016-02-15 10:03:35

标签: c# asp.net azure azure-sql-database azure-web-sites

我对Azure Webapp有一个非常大的问题,并希望听到建议。

我们的体验:

当我转到我们的网站时,它非常快。平均负载约为1秒,并按预期响应。

然而,一旦pr。 10-20分钟,我们得到一个非常冷的负荷 - 它是30-60秒+。

如果该网站没有访问者且感冒,这是有道理的,但我们在网站上的所有工作时间都有10位以上的访问者,至少有3-5个请求。

当然,这种额外负荷是完全不可接受的。

有什么想法吗?

我们的设置:

我们有两个天蓝色的网络应用程序。一个用于生产,一个用于开发。

生产是一个“标准小”,当CPU达到65-85%时,自动缩放。

我们数据库是S2,10 gb。

这是一个非常简单的标准ASP.NET MVC站点,包含一些文本,表单和一些远程连接。

唯一的“非标准”是300万个索引页面,可以查看数据库(页面加载大约为1秒)。这会吸引很多来自Google的访问者。我们还收到一些来自Google的抓取信息,因为我们有一个包含3个月+页面的站点地图。

来自监视器的数据:

编辑:来自新监视器的数据。

enter image description here

Web的应用程序:

enter image description here

数据库:

enter image description here

配置:

制作网络应用:

enter image description here

数据库:

enter image description here

我们的尝试:

1:永远在线。

我们总是多次尝试过,但是在前30分钟到6个小时的某个时间点,网站只是下降而不会回来**。这当然是个大问题,不是解决方案。

2:在虚拟机上运行。

我们在Azure上的VM(4gb RAM)上有一个非常稳定和精细的设置,但运行正常。我们的反应相当缓慢,但效果不错。但是,我们希望使用Web应用程序将扩展和平台“外包”到Azure - 我们无法接受这种速度:)

**

在超时前它永远没有反应。我尝试了两个场景:一个停止和启动web-app工作,另一个我必须重新部署

2 个答案:

答案 0 :(得分:4)

为了进一步确定瓶颈是什么,请您使用新的Ibiza门户网站http:portal.azure.com。

上面的旧门户网站截图显示了54分钟的平均值。显然,平均5分钟和DTU约为80%,可能会有所有DTU被消耗的时期,这可能是瓶颈。

使用新门户网站,这些DTU图表的平均值为15秒,这种更精细的粒度可能会指向瓶颈。您可以更改为新门户并粘贴更多图表吗?

谢谢盖伊

答案 1 :(得分:1)

我找到了解决方案。

解决方案不只是在一个地方,而是在多个地方。

让我试着深入了解。

主要挑战是我们索引的300万页。谷歌每天抓取50到150万页,我们可以在Google网站管理员工具中看到:

enter image description here

99.9%这些页面是一种独特类型的地址页面。我潜入了这些,发现这些默认值为1.5-2(!)。跑向测试时甚至很慢。

步骤#1是制作新索引并优化代码。 5倍性能提升。

现在,这本身并不能解决问题。我还将数据库升级到新的S3 ...没有完全解决问题(但仍然更好)。

我还将Azure Web App升级到7gb版本 - 然后开始执行。

但是,我们每隔30分钟仍有一个小问题。我进入我们的虚拟机,发现了一个旧的控制台工作,保留了一些内容......我暂停了那份工作。

这些调查结果都不能单独存在 - 但在所有这些结果得到解决之后 - 我们再次表现良好,网站响应可以接受!

乌拉!