繁体   English   中英

性能缓慢Azure'Web App'+ Azure SQL DB

[英]Slow performance Azure 'Web App' + Azure SQL DB

我已经将现有的asp.net web-api从Azure VM(本地安装了IIS和MSSQL)移动到Azure Web应用程序和Azure SQL数据库(西欧)。 我注意到,对于相同的工作负载,两者之间的处理持续时间会急剧增加。 在VM上占用10-15ms的任务,在托管服务环境中至少需要150ms。 内部处理,不包括往返于vm或web应用程序的网络延迟。 两者都有空数据库和相同的代码库。 具有相同索引的相同数据库模式。

VM是一个简单的2核/ 7GB SSD机器。 但即使我将我的网络应用程序设置为高级4核/ 7GB而我的数据库设置为高级250DTU,性能也不会提高。 事实上,它在基本的2核web应用程序和10DTU数据库上是相同的。 所以瓶颈必须在其他地方。

我如何找出导致处理速度缓慢的原因? Web应用程序和数据库显示没有性能警报,也不建议按比例放大。

对每个会话/工作负载运行以下查询,以了解在这些工作负载期间发生的等待类型:

- 你的查询在这里

go

select * 
from sys.dm_exec_session_wait_stats
where session_id = @@spid
order by wait_time_ms desc

最后一个SELECT语句将为您提供当前会话的所有等待。

您还可以启用查询存储。

http://www.sqlcoffee.com/Azure_0010.htm

并运行以下查询以了解在执行期间查询等待的原因

select  wait_category_desc, sum(total_query_wait_time_ms) as [sum ms], count(*) as [interval cnt],  avg(avg_query_wait_time_ms) as [avg ms], sum(total_query_wait_time_ms / avg_query_wait_time_ms) as [wait cnt]
from sys.query_store_wait_stats
group by wait_category_desc
order by [sum ms] desc

以下文章将告诉您每个等待类别的含义。

https://docs.microsoft.com/en-us/sql/relational-databases/system-catalog-views/sys-query-store-wait-stats-transact-sql

希望这可以帮助。

我今天遇到了同样的问题:使用Azure DB Azure Web App导致与数据库交互的任何内容的性能降低。

然而,当我在我的电脑上本地运行应用程序时,体验非常快。 因此,我检查了我的应用服务和位置。 我在澳大利亚使用位于美国的S1服务和数据库。

•因此我升级到Premium S2

•将我的Web App和DB放在同一区域。

这两个变化导致了大​​规模的性能提升。


我不知道为什么我的前一个答案是重复是一个问题,如果我是另一个问题的相同答案的原始海报,如果答案适用并且是正确的。 改变它只是因为没有意义。 请先评论并允许我在完全删除前编辑...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM