现在的位置: 首页 > 综合 > 正文

.Net 调式案例—信息和安装指引

2012年12月08日 ⁄ 综合 ⁄ 共 1863字 ⁄ 字号 评论关闭

.Net 调式案例信息和安装指引

案例

这是一系列的调式案例,目的是要帮助你,给你在dotnet应用中的假死(hang)性能、内存和崩溃(crash)几个常出现的情景的调式上的一些上手的经验。

这些例子都是用ASP.NET 来编写的,那就需要在安装例子的开发机器上安装IIS.net framework 2.0

每个例子都会有一些如何开始的指令说明,但是在这些实验中,指令会故意的简单,这样可以让你自己发挥最大的可能来自己研究,当你卡住了,你可以看看提示。

如果时间允许,我会发表在我的blog上,我计划每周一个新实验。

注意:这些例子会导致高cpu使用率、高内存消耗或崩溃。所以你要确保你仅仅把这些例子都装在了开发的机器上,免得有人抱怨系统假死了,或者系统崩溃了。

安装

1)  这里下载案例源代码,解压到文件夹中。

2)  IIS中新建一个虚拟目录,名字叫BuggyBits

3)  从浏览器中访问http://localhost/BuggyBits/default.htm 确保你的虚拟目录正确工作。

4)  访问这个页面:http://localhost/BuggyBits/CompanyInformation.aspx,确保你的aspx页面可以正常工作。

5)  http://www.microsoft.com/whdc/devtools/debugging/default.mspx 这里下载并安装windows调试工具,即WinDBg,如果已经安装可以省略这步。

6)  双击运行InternetConnections.reg 文件,改变IE浏览器针对同一个站点的对外连接数。修改注册表有风险,你可以用记事本打开那个文件,然后参照来手动修改注册表。

7)  安装tinyget(和IIS6.0的资源工具包一起,http://support.microsoft.com/kb/840671 ),我们要用这个来给某些aspx页面施压,来产生假死(hang)和内存泄露(memory leak)。

一些术语和工具

每一个例子和实验都假设你已经熟悉了如下的东西:

Windbg

Windows的调式工具,默认会被安装在“c:\program files\debugging tools for windows

Adplus

自动抓取内存dump的脚本,被安装在调试工具目录下

Debuggers directory

调试器目录,典型的是: c:\program files\debugging tools for windows

SOS

调试托管.net 代码的扩展工具,和 .net framework 一起安装,通常在“C:\Windows\Microsoft.NET\Framework\v2.0.50727下,简单的,你可以把这个文件拷贝到调式器目录中去。

Loading SOS

Loading SOS in windbg can be done by running .load <path to sos>\sos.dll at the windbg command line, or by running .loadby sos mscorwks (which will load it from the framework directory).  If sos is copied to the windbg directory you can simply type .load sos

加载SOS扩展,通过载WinDbg命令窗口运行“.load <path to sos>\sos.dll”,或者运行“.loadby sos mscorwks”,如果SOS.dll 已经拷贝到调试器目录,那就是简单的“.load sos

Setting up symbols

符号(Symbols)是为了查看非.net 代码即本地代码的堆栈部分。安装符号你可以运行

.symfix c:\mycache

 .reload

c:\mycache”是缓存符号文件的本地缓存地址,如果当WinDbg询问你是否保存工作区间时,你选择“是”,那么这些符号文件在下一次的调试种仍然可以使用。

Tinyget

TinyGet 5.2 (TinyGet.exe) 是一个基于命令行的支持多线程和循环的HTTP客户端,可以使用这个工具来测试客户端和服务器端的通讯,通过这个工具你可以通过配置许多不同的参数来自定义你的测试请求,这些参数包括:认证方式,http版本和输出格式等。你也可以通过脚本来执行循环和多线程。

http://support.microsoft.com/kb/840671 这里有更多的信息。

还有一些基本知识,可以阅读我前面发表的文章。

抱歉!评论已关闭.