zoukankan      html  css  js  c++  java
  • Basic Windbg 导读

    为什么我们需要debug?原因大概有几个,几乎都是在生产环境下,我们解决不了的:

    1、系统就是慢。稍微懂点的客户,拿taskmgr一看,说你的aspnet_wp.exe或者w3wp.exe占用cpu太高,或者内存太高,dba到sql里面一看,说cpu太高。sql的我以前写过,这里不讲,对于前者.net的程序,你怎么处理?
    2、cpu很低,内存很平稳,系统就是慢,你怎么处理?
    3、很偶然的情况下,某些客户端会提示null reference exception,一般是因为session丢失造成的,你怎么处理?
    4、内存暴涨,到了物理内存的60%,w3wp.exe崩溃,你怎么处理?如果在iis6上面,默认配置上,crash5次,app pool就disable了,所有人都登录不了,你怎么处理?
    5、。。。。。。

    如果你想在server上装.net ide,劝你就不要做梦了。其一,一般的客户都不会同意你在上面装一个vs2005或者vs2008;其二,你装上了后,你怎么debug?断点你设置在哪里?
    为什么会这样?因为代码是死的,跑起来之后就是活的。我们要“实时”的发现案发现场的蛛丝马迹,那么,如果你不能attach process(这样会挂起监视进程),那么只有抓dump,然后debug。

    这就是为什么我们需要在生产环境下抓dump的原因。明了了这个原因,再看这个系列,会有点帮助。更多的,还是看葡萄的书,哈!
    (我还剩四本,因为没空,所以没给那几个兄弟送。葡萄都签名的,你们不要倒卖了啊!)
  • 相关阅读:
    Spring框架中的单例bean是线程安全的吗?
    Spring Cloud 解决了哪些问题?
    服务端处理 Watcher 实现 ?
    内部类可以引用它的包含类(外部类)的成员吗?有没有什么限制?
    vue-router点击同一个页面异常处理
    mybatis代码生成+自定义注解+自定义注释
    lombok使用
    idea格式化设置
    寒假每周总结4
    寒假每日日报27
  • 原文地址:https://www.cnblogs.com/juqiang/p/1025231.html
Copyright © 2011-2022 走看看