原创 調試.NET Web應用程序High Memory - Part 1

最近遇到.NET Web應用程序內存使用的各種問題,總結一些具體的現象和調試方法。常見的不正確的內存使用造成高內存使用量主要原因有以下這麼幾種, 問題分類 大數據量DataTable 大多數web應用程序都會用到DataTable,Dat

原创 調試.NET Web應用程序High Memory - Part 2

在第二部分我們主要介紹針對各種內存問題的主要調試方式。在開始之前我還是推薦一個常規的調試步驟。   Part1我們提到過debugdiag工具以及如何通過其內建的rule來分析dump。   收集dump通過DebugDiag選擇Mana

原创 IIS Web應用程序調試的基本問題和工具

應用程序調試,需要有個常規的調試思路,應對各類問題最基本的調試手段是什麼,不能一頭霧水的上手而亂了陣腳,而且根據經驗統計這些基本的步驟可以解決大多數的問題。   問題分類   第一種,應用程序不工作了。 第二種,應用程序反應很慢。 對

原创 Http 400錯誤重現實驗及解決辦法

問題簡介 每當遇到http錯誤代碼爲400,代表客戶端發起的請求不符合服務器對請求的某些限制,或者請求本身存在一定的錯誤。   目前400錯誤經常出現在用戶認證階段,當一個用戶從屬於過多的域時,在Kerberos認證階段會將域信息發送給

原创 Windows內核調試實驗方法

如果需要通過實驗來了解windows操作系統,免不了要進行內核調試,這邊文章把一些內核調試途徑和方法羅列下。    實驗環境  Windows 8 Enterprise+ Hypher V  VM - 2003 SP2 VM - 200

原创 Windows異常分發 - First Chance Exception vs Second Chance Exception

通過visualstudio運行程序,經常會在output裏面看到類似的輸出, A first chanceexception of type 'System.DivideByZeroException' occurred in xxx.

原创 調試.NET程序OutOfMemoryException

問題簡介  Out of memory異常是如何產生的   總的來說OutOfMemoryException會在兩種情況下發生, 進程虛擬內存空間耗盡 系統物理內存耗盡 第二種情況我們可以參照系統進程管理器中性能選項卡,如果其中co

原创 另一種形式的OufOfMemoryException

內存中空閒空間不少,但是連續的空閒空間卻只有100k。 0:000> !address -summary --- Usage Summary ---------------- RgnCount ----------- Total Si

原创 調試.NET Web應用程序High CPU

如果Web應用程序經常遇到的問題按頻率排名的話,我覺得  第一名unhandled exception 第二名high memory 第三名high cpu  這篇文章介紹web應用程序中cpu使用率過高問題相應的數據收集方式和調試問題的

原创 關於.NET垃圾回收(GC)的基本問題

在.Net應用程序中很多問題都是沒有正確的理解垃圾回收的工作原理而導致的,這裏有一些關於GC的基本問題,如果看到問題答案心裏都有數,那就請略過這篇,不然就一起來複習下吧。 什麼是代?什麼時候發生垃圾回收?什麼是大對象堆?什麼是root?什

原创 Kerberos認證問題的調試試驗

Kerberos作爲一種windows推薦的集成認證方式被廣泛的應用,也有很多文章介紹Kerberos認證方式,這裏通過一個Kerberos認證問題的調試試驗來介紹一下Kerberos的認證流程以及相關的

原创 Windows同步機制原理及使用方法

同步對於計算機系統來說是一個必須要面對的問題, windows系統對內核或外部應用程序提供了多種同步機制,通過這篇文章來介紹 同步機制的工作機制同步機制的使用方法同步機制可以按照不同的方式分類,如按照IRQL的高低,按照內核模式還是用戶模

原创 IE連接設置問題

IE連接設置代理有三種方式 自動檢測設置自動配置腳本手動指定代理服務器 這三種設置是按照從上到下的順序被採用的,換句話說如果自動檢測設置可以工作,自動配置腳本就不會起作用,自動配置腳本工作,手動服務器就不會起作用。 設置過程中經常遇

原创 C#實現的自定義IIS認證模塊

IIS7以後application pool都支持兩種模式:經典模式和集成模式。 所謂經典模式就是與IIS6的application pool運行模式相同,對於asp.net的頁面請求處理由單獨的asp.net filter完成。 集成模

原创 Working Set, Paged Pool and Non-paged pool

Working Set The working set of a process is the set of pages in the virtual address space of the process that are curre