日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一文解读使用WinDbg排查iis 中CPU占用高的站点问题

發布時間:2023/12/4 编程问答 86 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一文解读使用WinDbg排查iis 中CPU占用高的站点问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、概述

在Window服務器部署程序后,可能因為代碼的不合理或者其他各種各樣的問題,會導致CPU暴增,甚至達到100%等情況,嚴重危及到服務器的穩定以及系統穩定,但是一般來說對于已發布的程序,沒法即時看到出問題的代碼,而微軟提供了一個很好的工具“WinDbg”,使得我們能夠回溯問題。下面講一下操作步驟。

?

二、操作步驟

1. 下載軟件:

  下載地址:https://docs.microsoft.com/zh-cn/windows-hardware/drivers/debugger/debugger-download-tools

  

?

2.?安裝

  只需要選擇:Debugging Tools for Windows 即可?! ?/p>

  

?

3. EXE位置

  {安裝目錄}/Debugger/{x64 || x86}/windbg.exe

?

4.?獲取DMP文件

(1)打開任務管理器

(2)選擇CPU較高的進程

(3)右鍵“創建轉儲文件”

(4)獲取最后的目錄位置,拿到DMP文件即可

  

?

5.?查看有問題的進程(已準備w3wp.DMP文件)

(1)打開windbg.exe

(2)將w3wp.DMP?拖入窗口

(3)輸入指令加載sos clr

  .loadby sos clr

(4)檢查clr版本是否一致

  !clrstack

  下圖表示clr不存在或者版本不一致

  

?

? 

  這個時候就需要將DMP文件所在服務器的sos.dll clr.dll mscordacwks.dll 三個dll拷貝下來,所在位置:C:\Windows\Microsoft.NET\Framework?\version?\SOS.dll 同目錄下

  放到一個目錄中:【D:\windb\dll】,以下指令用于指定對應的sos.dll,clr.dll

  .cordll -lp?D:\windb\dll

  

?

(5)獲取執行時間很長的線程

  !runaway

  

  可以看到前幾個線程執行了很長時間沒有結束掉,那么我們就進入這個線程,查看具體的堆棧信息

(6)進入線程

  ~{threadId}s => ~61s

  

?

(7)查看堆棧信息

  !clrstack

  

  上圖即可看到對應的一些自定義的代碼,即可根據這些代碼分析哪塊代碼寫得不合理,也還可以點擊進入查看詳細的信息

  

?

?

6. 以上為簡單的查看CPU過高的簡單解決方案案例,對于WinDbg的相關指令可以使用搜索引擎進行搜索學習。以下附上一些文章:

?

?

https://blog.csdn.net/iwilldoitx/article/details/81048500

?

https://www.cnblogs.com/huangsitao/p/10299300.html

往期精彩回顧



  • 【.net core】電商平臺升級之微服務架構應用實戰

  • .Net Core微服務架構技術棧的那些事

  • Asp.Net Core 中IdentityServer4 授權中心之應用實戰

  • Asp.Net Core 中IdentityServer4 授權中心之自定義授權模式

  • Asp.Net Core 中IdentityServer4 授權流程及刷新Token

  • Asp.Net Core 中IdentityServer4 實戰之 Claim詳解

  • Asp.Net Core 中IdentityServer4 實戰之角色授權詳解

  • Asp.Net Core 中間件應用實戰中你不知道的那些事

  • Asp.Net Core Filter 深入淺出的那些事-AOP

  • Asp.Net Core EndPoint 終結點路由工作原理解讀

  • ASP.NET CORE 內置的IOC解讀及使用


總結

以上是生活随笔為你收集整理的一文解读使用WinDbg排查iis 中CPU占用高的站点问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。