weblogic當機及解決

zgy13121發表於2009-06-03
1.現象表述: 伺服器不定期的一週或二週當機一次,當時作業系統正常。 2.基本配置 weblogic版本:8.1.3 執行緒數:25 連線池:3個資料來源,連線數最小、最大在2-25個(業務資料來源為初始值12個) oracle:rack雙IP地址 作業系統:window2003 8cpu 網路狀態:伺服器與資料庫物理隔離(網閘),有明細的安全機制,可能會影響伺服器與Oracle資料庫連線的穩定性。 jdk: sun jdk142 3.檢查過程 a.在當機的時間點前,檢查domain,server,控制檯日誌,沒發現明顯異常,經過日誌檢查,經常報bea-10118警告,該警告的原因是request的getOutputStream和getParamter兩個方法不能同時使用。 b.weblogic是產品模式,啟動記憶體為512-1024M c.控制檯的監控:正常使用執行緒6-8個左右,記憶體在低位浮動,正常。 d:沒發現有計劃任務。 4.原因分析: 該系統已經執行3年,基本可以排除程式上的問題。 原因1:一般繁忙時候weblogic當機,經過配置引數執行緒數25個明顯不夠,可能超過執行緒數會引起weblogic當機。 原因2:bea-10118警告多次出現,檢查一下程式碼,將這個問題解決掉。(是否跟網路有關係,其他單位的伺服器是否出現同樣的情況)。 5.解決措施: 措施:將最大執行緒數調整到100 調整連線池初始引數(暫進沒做) 暫時還不能說明就是執行緒引發weblogic當機,再過幾周看效果! 後記: 上述措施並沒有解決問題,隔後的一個星期繼續出續當機現象,偶爾一次查詢oracle的v$session表,連線數比weblogic連線池數量少太多,從而考慮weblogic的連線池在使用網閘進行連線時,有可能造成連線失敗(資料庫自動關閉空閒連線或防火牆關閉連線)。而在連續申請都不成功(有可能自動關閉的連線在網閘內的連線名柄還在,沒關閉,所以申請不成功)的基礎上,造成weblogic當機。 解決措施: 1 設定測試頻率,不讓資料庫或防火牆斷掉連線。 2 設定weblogic自動重啟時間。[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11419868/viewspace-1022739/,如需轉載,請註明出處,否則將追究法律責任。

相關文章