加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

记一次.NET某观光社Web站CPU爆高详解

发布时间:2021-06-02 23:05:20 所属栏目:移动互联 来源:互联网
导读:痛惜发过来的 dump 只有戋戋2G,能在这内里找到内存溢出那真有两把刷子。。。??????,以是我照旧但愿他的措施内存涨到 5G+ 的时辰再给我看看,既然内存看不了,
副问题[/!--empirenews.page--]

痛惜发过来的 dump 只有戋戋2G,能在这内里找到内存溢出那真有两把刷子。。。??????,以是我照旧但愿他的措施内存涨到 5G+ 的时辰再给我看看,既然内存看不了,那就看看这个无意飙升的CPU是个啥环境?老步伐,上windbg措辞。

windbg 说明

 CPU 到底是几多

要想查察这个快照天生气缘器的cpu行使率,可以行使 !tp 呼吁。

0:033> !tp 

CPU utilization: 93% 

Worker Thread: Total: 800 Running: 800 Idle: 0 MaxLimit: 800 MinLimit: 320 

Work Request in Queue: 3203 

    Unknown Function: 000007fefb551500  Context: 000000002a198480 

    Unknown Function: 000007fefb551500  Context: 0000000028a70780 

    Unknown Function: 000007fefb551500  Context: 000000002a182610 

    Unknown Function: 000007fefb551500  Context: 00000000262a2700 

本觉得一个简朴的呼吁,功效屏幕上呼啦啦的一堆。。。有点不测,从上面的卦象看:当前CPU操作率是 93%,没短处,确实是CPU飙升,较量惊奇的是,线程池上限800个线程所有被打满,太悲壮了。。。可更悲壮的是线程池行列中尚有 3203 个待处理赏罚的使命,可以揣摩措施不只高CPU,尚有挂死征象。。。

接下来的题目是:这800个壮士到底怎么啦,措施此刻正是用人之际,要想找出谜底,照旧凭证我的惯性思想,查察同步块表。

线程同步块表

要想查察同步块表,可以行使 !synblk 呼吁。

0:033> !syncblk 

Index SyncBlock MonitorHeld Recursion Owning Thread Info  SyncBlock Owner 

  188 0000000010defc28            1         1 000000001e8fb400 9f4 715   00000003ff1e3d80 System.Web.HttpApplicationStateLock 

126159 000000001e424e28            1         1 0000000023425e00 1f14 695   0000000301210038 ASP.global_asax 

126173 00000000281acaf8            1         1 0000000024b8ea70 24ec 785   00000000ff8c5e10 ASP.global_asax 

126289 00000000247a4068            1         1 0000000027ee93c0 808 413   0000000306aca288 ASP.global_asax 

126368 0000000027180dd8            1         1 0000000028005cb0 1e7c 650   00000002008d6280 ASP.global_asax 

126489 0000000027211dd8            1         1 0000000026862420 ec4 220   000000030611a290 ASP.global_asax 

126788 00000000247924b8            1         1 0000000021871ff0 2784 529   00000004039901a8 ASP.global_asax 

126843 00000000285b8d28            1         1 000000001cbd6710 2170 456   00000004007ec748 ASP.global_asax 

126934 0000000021b212b8            1         1 0000000026ca7590 16cc 472   000000030090e810 ASP.global_asax 

127251 0000000024769188            1         1 000000002831eaf0 2b68 648   0000000207051038 ASP.global_asax 

... 

 

----------------------------- 

Total           141781 

CCW             2 

RCW             4 

ComClassFactory 0 

Free            140270 

我去,又是呼啦啦的一堆,从上面的卦象可以看出两点信息:

MonitorHeld: 1

暗示当前有一个线程正在持有锁。

ASP.global_asax , System.Web.HttpApplicationStateLock

暗示当前列程持有的工具。

(编辑:湖南网)

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

热点阅读