如何分析IIS占用CPU资源问题?看看这篇文章吧

小丫2年前技术文章1377

ProcDump捕获dump文件

1、下载

官方下载地址为:

https://learn.microsoft.com/en-us/sysinternals/downloads/procdump#introduction

2、安装

下载下来的文件为压缩包,直接解压执行对应文件即可使用。

image.png

3、捕获dump文件

例如,捕获IIS进程dump文件

在cmd或者powershell中执行命令:

C:\Users\Administrator\Downloads\Procdump\procdump64.exe -c 20 -s 4 -ma -n 3 w3wp

#参数介绍

-c 代表cpu使用率超过20%自动捕获
-s 每隔多少s获取一个文件
-n 总共捕获多少个dump文件

image.png

WinDbg分析dump文件

1、下载

WinDbg工具下载比较特殊,该工具是集成到windows-sdk安装包中的,所以需要先下载windows-sdk

windows-sdk官网下载地址:

https://developer.microsoft.com/zh-cn/windows/downloads/windows-sdk/

2、安装

打开windows-sdk  在安装的时候选择只下载安装"Debugging Tools for Windows"即可。如下图:

image.png

然后进入安装目录下找到下载的安装包,双击安装WinDbg工具

image.png

安装完成之后,就可以看到“WinDbg”这个软件了

image.png

3、分析dump文件

打开dump文件

image.png

选择目标dump文件

image.png

在命令输入区,输入对应命令分析:

image.png

1、命令:!runaway

可以看到哪些进程是消耗Time最长的,时间越长占用的cpu时间越久,这样就可以分析那个线程的问题了

2、命令:~19s

进入线程,命令:~19,意思是19这个线程。实际使用的时候需要根据实际的序号输入

3、命令:!clrstack

查看具体是哪个方法导致的

image.png


相关文章

Redis 运维规范_运维管理规范

三、运维管理规范1、密码认证 云上 Redis 的权限控制:账号管理+白名单设置+阿里云子账号权限。对于线下 Redis 可以通过设置密码和 bind 参数文件控制访问。2、合理设置备份策略 Redi...

数据湖技术之iceberg(十一)Flink与Iceberg整合-DataStream API

数据湖技术之iceberg(十一)Flink与Iceberg整合-DataStream API

1.实时写入Iceberg表DataStream Api方式操作Iceberg方式目前仅支持Java Api。使用DataStream API 实时写入Iceberg表具体操作如下:2、编写代码使用D...

基于Jenkins和Kubernetes的CI/CD

基于Jenkins和Kubernetes的CI/CD

jenkins安装安装helm CRD编辑好yaml文件后直接安装即可k3s kubectl apply -f jenkins-crd.yaml查看我们安装好的helmchart crdk3s kub...

高效便捷!解锁阿里云跨账号专线互联的全新实施方案

高效便捷!解锁阿里云跨账号专线互联的全新实施方案

01背    景为持续提升金融云环境的合规标准以及可用区内产品服务的性能和稳定性,阿里云将对杭州地域BCD三个金融云可用区进行基础设施架构升级与改造,对应可用区云产品将于 2024...

python-序列化和反序列化

1、为什么要序列化内存中的字典、列表、集合以及各种对象,如何保存到一个文件中?如果是自己定义的类的实例,如何保存到一个文件中?如何从文件中读取数据,并让它们在内存中再次恢复成自己对应的类的实例?要设计...

MySQL运维实战之备份和恢复(8.4)xtrabackup恢复全量备份

恢复全量备份恢复全量备份大致可以分成以下几步:解压备份文件、prepare备份文件、将数据copy到目标实例相关目录、启动数据库实例。解压文件如果备份时使用了xbstream,需要先解压备份文件。我们...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。