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

小丫2年前技术文章1707

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


相关文章

hdfs数据迁移

hdfs数据迁移

通过使用distcp进行数据全量迁移DistCp(分布式拷贝)是用于大规模集群内部和集群之间拷贝的工具。 它使用Map/Reduce实现文件分发,错误处理和恢复,以及报告生成。 它把文件和目录的列表作...

SpringBootWeb 篇-深入了解 SpringBoot + Vue 的前后端分离项目部署上线与 Nginx 配置文件结构(1)

SpringBootWeb 篇-深入了解 SpringBoot + Vue 的前后端分离项目部署上线与 Nginx 配置文件结构(1)

  1.0 云服务器的准备        使用云服务是为了可以得到一个 Linux 环境,比如说常用到的 Ubuntu 的配套程序。  &n...

SQL Server优化入门系列(三)—— 性能计数器(performance counter)

SQL Server优化入门系列(三)—— 性能计数器(performance counter)

说明Performance Counter是windows系统中通用的性能分析工具。Windows OS和SQL Server暴露了很多Performance Counter,可用户分析整个系统的运行...

keycloak部署和使用

keycloak部署和使用

简介Keycloak是一个开源软件产品,旨在为现代的应用程序和服务,提供包含身份管理和访问管理功能的单点登录工具。截至2018年3月,红帽公司负责管理这一JBoss社区项目,并将其作为他们RH-SSO...

kafka单条消息过大导致线上OOM

1 线上问题kafka生产者罢工,停止生产,生产者内存急剧升高,导致程序几次重启。查看日志,发现Produce程序爆异常kafka.common.MessageSizeTooLargeExceptio...

trino容器对接hudi(五)

trino容器对接hudi(五)

前提:本文是基于已经部署了trino容器的基础上进行的。冒烟测试是在trino对接ldap后并且ranger已经对接了metastore权限后,并且spark组件已经对接hudi,并且成功创建hudi...

发表评论    

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