加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 性能缓慢的Azure’Web App’Azure SQL DB

发布时间:2020-12-16 07:42:22 所属栏目:asp.Net 来源:网络整理
导读:我已经将现有的asp.net web-api从Azure VM(本地安装了IIS和MSSQL)移动到Azure Web应用程序和Azure SQL数据库(西欧).我注意到,对于相同的工作负载,两者之间的处理持续时间会急剧增加.在VM上占用10-15ms的任务,在托管服务环境中至少需要150ms.内部处理,不包括
我已经将现有的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

希望这可以帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读