摘要:
一:背景 1. 讲故事 前几天有位朋友wx求助,它的程序CPU经常飙满,没找到原因,希望帮忙看一下。 这些天连续接到几个cpu爆高的dump,都看烦了😂😂😂,希望后面再来几个其他方面的dump,从沟通上看,这位朋友表现的好惨,可能实际更惨,那既然找到我了,我就尽最大能力帮他找到幕后真凶,话不多 阅读全文
摘要:
一:背景 1. 讲故事 前几天有位朋友wx求助,它的程序内存经常飙升,cpu 偶尔飙升,没找到原因,希望帮忙看一下。 可惜发过来的 dump 只有区区2G,能在这里面找到内存泄漏那真有两把刷子。。。😂😂😂,所以我还是希望他的程序内存涨到 5G+ 的时候再给我看看,既然内存看不了,那就看看这个偶 阅读全文
摘要:
一:背景 1. 讲故事 前几天有位朋友加 wx 抱怨他的程序在高峰期总是莫名其妙的cpu爆高,求助如何分析? 和这位朋友沟通下来,据说这问题困扰了他们几年😂,还请了微软的工程师过来解决,无疾而终,应该还是没找对微软的大佬。。。 关于程序CPU爆高的问题,老读者应该知道我都写了好几篇了,基本上归为两 阅读全文
摘要:
一:背景 1. 讲故事 前些天把 .NET 高级调试 方面的文章索引到 github 的过程中,发现了一个有意思的评论,详见 文章,截图如下: 大概就是说在 Winform 的主线程下执行 Task.Result 会造成死锁,我也看了图中的参考链接, Stephen 是绝对的大佬,不过这篇文章对死锁 阅读全文
摘要:
一:背景 1. 讲故事 前几天有位朋友加wx求助说他的程序最近总是出现内存溢出,很崩溃,如下图: 和这位朋友聊下来,发现他也是搞医疗的,哈哈,.NET 在医疗方面还是很有市场的😁😁😁,不过对于内存方面出的问题,我得先祈祷一下千万不要是非托管。。。 废话不多说,上 windbg,看能不能先救个急 阅读全文
摘要:
一:背景 1. 讲故事 这篇文章起源于 搬砖队大佬 的精彩文章 WinDBg定位asp.net mvc项目异常崩溃源码位置 ,写的非常好,不过美中不足的是通览全文之后,总觉得有那么一点不过瘾,就是没有把当时抛异常前的参数给找出来。。。这一篇我就试着弥补这个遗憾😁😁😁。 为了能够让文章行云流水, 阅读全文
摘要:
一:背景 1. 讲故事 我在年前写过一篇关于CPU爆高的分析文章 再记一次 应用服务器 CPU 暴高事故分析,当时是给同济做项目升级,看过那篇文章的朋友应该知道,最后的结论是运维人员错误的将 IIS 应用程序池设成 32bit 导致了事故的发生,这篇算是后续😂😂😂,拖了好久才续上哈。 犹记得那 阅读全文
摘要:
一:背景 1. 讲故事 这几天看的 dump 有点多,有点伤神伤脑,晚上做梦都是dump,今天早上头晕晕的到公司就听到背后同事抱怨他负责的WPF程序挂死了,然后测试的小姑娘也跟着抱怨。。。嗨,也不知道是哪一个迭代改出来的问题,反正客户不起义问题都不大。😅😅😅 不过我听到程序无响应,内心深处真的 阅读全文
摘要:
一:背景 1. 讲故事 上周四有位朋友加wx咨询他的程序出现 CPU + 线程 双高的情况,希望我能帮忙排查下,如下图: 从截图看只是线程爆高,没看到 cpu 爆高哈😂😂😂,有意思的是这位朋友说他: 一直在手动回收 ,不知道为啥看着特别想笑,但笑着笑着就哭了。 可能朋友知道老规矩,发了两份du 阅读全文
摘要:
一:背景 上一篇我们聊到了如何通过 procdump 抓取 cpu爆高 和 内存暴涨 两种情况,这一篇再聊聊如何去抓程序 挂死 和 意外退出。 二:程序挂死 1. 定义 程序挂死 简单的说就是程序没有响应,既然没响应了,可能 死锁, 可能 负载过大线程池耗尽 等等情况,万千世界,啥情况都有😄😄� 阅读全文
摘要:
一:背景 1. 讲故事 上个月有个老朋友找到我,说他的站点晚高峰 CPU 会突然爆高,发了两份 dump 文件过来,如下图: 又是经典的 CPU 爆高问题,到目前为止,对这种我还是有一些经验可循的。 抓 2-3 个 dump 第一个:有利于算两份 dump 中的线程时间差,从而推算最耗时线程。 第二 阅读全文
摘要:
一:背景 1. 讲故事 前天有位粉丝朋友在后台留言让我帮忙看看他的 Winform程序 UI无响应 + 410线程 到底是啥情况,如下图: 说实话,能看到这些真实案例我是特别喜欢的😁😁😁 ,就像医生看病,光停留在理论和那些 demo 上,那是没有前途的,如果有朋友在这块搞不定的话,我可以免费帮 阅读全文
摘要:
一:背景 相信很多人都知道通过 任务管理器 抓取dump,虽然简单粗暴,但无法满足程序的无数种死法,比如: 内存膨胀,程序爆炸 CPU爆高,程序累死 应用无响应,用户气死 意外退出,和人生一样 既然手工太弱鸡,那有什么好的工具呢? 除了 adplus,本文推荐一款神器 procdump, 下载地址: 阅读全文
摘要:
一:背景 1. 讲故事 前天wx上有个朋友丢给我一个dump,让我帮忙鉴定一下某些敏感信息在内存中是否也是加密的,现在数据安全很重要,不仅数据库中的信息要加密,灌到内存后数据同样也需密文存储,随用随解密,争取安全最大化😄,此为背景,接下来就是我艹,这咋让我鉴定呀?😂😂😂 二:如何鉴定 1. 阅读全文
摘要:
一:背景 相信有很多朋友在遇到应用程序各种奇葩问题后,拿下来一个dump文件,辛辛苦苦分析了大半天,终于在某一个线程的调用栈上找到了一个可疑的方法,但 windbg 常常是以 汇编 的方式显示方法代码的,可惜的是,现如今的汇编,有多少像我们这些速成系码农还看的懂呢? 😂😂😂 接下来尖锐的问题就 阅读全文