花了將近半年的時間,終於能夠說找到緣由了。從2008年10月份開始,不少運行Windows Server 2003操做系統,而且部署了IIS應用的服務器,每隔一段時間(二天至一週不等)就會發生以下錯誤,現象爲服務器能夠Ping通,可是不能遠程鏈接,IIS老是返回Service Unavailable:
Event Type: Error
Event Source: Application Popup
Event Category: None
Event ID: 333
Date: 2009-4-9
Time: 22:53:39
User: N/A
Computer: TSU-B94629DD3F6
Description:
An I/O operation initiated by the Registry failed unrecoverably. The Registry could not read in, or write out, or flush, one of the files that contain the system's p_w_picpath of the Registry.
事件類型: 錯誤
事件來源: Srv
事件種類: 無
事件 ID: 2019
日期: 2009-4-5
事件: 5:33:14
用戶: N/A
計算機: CX
描述:
服務器沒法經過系統非頁面共享區來進行分配,由於共享區當前是空的。
事件類型: 錯誤事件來源: Application Popup事件種類: 無事件 ID: 333日期: 2009-4-10事件: 8:44:05用戶: N/A計算機: LIBSYSTE-PFPM5I描述:由註冊表引發的 I/O 操做發生了不可恢復的錯誤。 註冊表將不能讀取、寫出或刷新包含註冊表系統圖像的其中一個文件。
在系統日誌中,這些錯誤信息而且出現很是頻繁,每秒鐘會出現好幾回。 中文系統有這個問題,英文系統也有這個問題,近20個系統輪流出問題,就是一直找不到緣由,壓力很是大,人都快要瘋了。初看起來,彷佛是由於內存泄漏致使內存不足引發的,可是有些系統的內存很是大,而且IIS會自動回收應用池,即便存在內存泄漏,也不會發生內存不足的狀況。經過性能監視器分析的結果也是如此,系統在發生錯誤以前,可用內存仍然很是多。固然還花費了不少時間來分析IIS的日誌,也沒有獲得什麼有用的信息。網上也有很多相似錯誤的解決方案,包括修改IIS設置,修改註冊表,進行很多嘗試,就是解決不了問題。 就在快要失去信心的時候,終於有一天在本身的計算機(也使用Windows Server 2003系統)上也發生了相同的現象,幾乎關閉了全部的應用程序,可是經過事件查看器查看日誌時,仍然在頻繁地出現這種錯誤。直觀的理解就是某個程序在操做註冊表,可是沒有成功,因此係統報錯。至少能夠徹底排除IIS的緣由,由於本身的計算機根本就沒有運行IIS。 這時候想起在曾經地網上看到過因爲Norton Antivirus引發系統錯誤的記錄,當時由於環境彷佛很是不一樣,因此沒有太在乎。這時由於幾乎沒有其餘應用了,可是錯誤仍然頻繁出現,那麼應該能夠理解爲有什麼東西在阻止註冊表操做。由於系統對註冊表操做是很是頻繁地,通常也不容易出錯,確定有什麼進程在干擾它,致使註冊表操做失敗。同時聯想到這些出問題的系統幾乎都安裝了相同的防病毒軟件,Norton Antivirus,更加以爲它很是可疑。 因而卸載Norton Antivirus防病毒軟件,而且從新啓動計算機(爲了不繫統損壞,仍是從新啓動了計算機,由於個人目前是服務器,並非本身的計算機,不要由於排錯把本身的系統弄趴下,那就更折騰了。) 考慮到本身的計算機發生這種錯誤的機率較小,仍是找了一臺比較常常出現此問題的服務器作實驗。將該服務器的防病毒軟件卸載,觀察了近5天沒有再出現問題(到今天已經10天沒有出現問題)。而後逐步卸載其餘服務器的防病毒軟件。世界清淨了。 回想這事兒也不能全賴Symantec,畢竟我使用的Norton Antivirus企業版的版本比較老,7.61,儘管它在2003上可以成功安裝並運行,可是如今看來隱患很大。而且在Norton曾經錯誤的殺除系統文件事件以後,我仍然堅決地使用它。看來之後要踏實地作Norton黑了。