Wls_weblogic管理監(jiān)控_第1頁
Wls_weblogic管理監(jiān)控_第2頁
Wls_weblogic管理監(jiān)控_第3頁
Wls_weblogic管理監(jiān)控_第4頁
Wls_weblogic管理監(jiān)控_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、-作者xxxx-日期xxxxWls_weblogic管理監(jiān)控【精品文檔】中間件Weblogic管理監(jiān)控注意事項(xiàng)Weblogic監(jiān)控的目的:發(fā)現(xiàn)系統(tǒng)中的隱患及系統(tǒng)運(yùn)行是否穩(wěn)定。主要從以下幾方面進(jìn)行檢查:一、 操作系統(tǒng):檢查系統(tǒng)cpu、內(nèi)存等使用是否異常。如在負(fù)載不大的情況下,cpu是否一直居高不下,內(nèi)存占用是否一直很大??梢酝ㄟ^top(topas)、vmstat、free m、ps等命令查看。二、 網(wǎng)絡(luò):1、位于一個domain中各個服務(wù)器是否能夠聯(lián)通。2、weblogic服務(wù)器與數(shù)據(jù)庫服務(wù)器的鏈接是否暢通。三、 Weblogic1、檢查是否對jvm進(jìn)行了優(yōu)化,如最大堆內(nèi)存、最小堆內(nèi)存,以及gc

2、算法是否合理。2、檢查gc是否正常主要是通過weblogic控制臺,查看jvm的空閑內(nèi)存的變化情況,每次gc的回收情況。特別是可以在控制臺強(qiáng)制垃圾回收,看看回收的內(nèi)存是否太小。如果回收的內(nèi)存太小,說明可能存在內(nèi)存益處的隱患。3、檢查線程數(shù)通過weblogic控制臺可以查看線程數(shù)的統(tǒng)計信息。weblogic9及以上的線程是自優(yōu)化的。但應(yīng)該查看系統(tǒng)的線程最大數(shù)是否過大,如果過大,就要注意系統(tǒng)為什么會有這么大的壓力。如下為示例截圖Active Execute Threads:在活動的線程池內(nèi)處理請求的線程個數(shù)Execute Thread Total Count:線程池內(nèi)線程的總數(shù)Execute Th

3、read Idle Count:池內(nèi)的空閑線程數(shù)。它不包含stuck和standby的線程數(shù)。它是指等待接收新請求到來并處理的線程個數(shù)queue length :請求隊(duì)列的長度,及隊(duì)列中等待線程處理的請求的個數(shù)hogging thread count :線程處理一個請求時間超過一定值被視為hogging狀態(tài),如果繼續(xù)處理請求超過一定時間將被視為stuck,或處理完請求后被放回線程池standby thread count :統(tǒng)計在standby(備用)線程池內(nèi)的線程數(shù)。這些線程不需要處理當(dāng)前請求被放入standby池內(nèi),當(dāng)活動的線程池內(nèi)需要更多線程時,這些線程將被激活。Execute Thre

4、ad Total Count= Active Execute Threads+ standby thread count4、線程是否有stuck狀態(tài)的。 線程stuck狀態(tài)說明存在超時的線程,也有可能存在線程的死鎖。在查看線程數(shù)的時候,查看Health一欄,如果出現(xiàn)Warning則代表有stuck(阻塞線程),就要查看系統(tǒng)的運(yùn)行狀態(tài),jvm等的狀態(tài)是否正常,內(nèi)存使用率等。立即做thread dump得到當(dāng)前虛擬機(jī)下線程活動快照,就可以分析服務(wù)器線程之間是否存在死鎖,以及哪些線程處于stuck狀態(tài)。產(chǎn)生thread dump,可以通過命令ps ef | grep java 列出所有java進(jìn)程即

5、啟動的所有的weblogic server進(jìn)程,找到有線程阻塞的進(jìn)程號wls_pid,然后使用kill -3 wls_pid得到thread dump。通常thread dump會被輸入到標(biāo)準(zhǔn)輸出中,如果用nohup后臺方式啟動則會出現(xiàn)在或重命名的文件中 。如果是windows環(huán)境則在dos標(biāo)準(zhǔn)輸出窗口中用“ctrl+break”組合鍵獲取thread dump。5、jdbc連接池檢查連接池中等待連接的數(shù)目是否過大,可以做適當(dāng)調(diào)整。如果用戶訪問系統(tǒng)變慢,且連接池基本占滿,但是weblogic的線程數(shù)量很少,就要懷疑應(yīng)用是否沒有釋放數(shù)據(jù)庫連接。如下為監(jiān)控數(shù)據(jù)庫連接池截圖示例:查找連接泄露點(diǎn)的方法

6、:如下圖所示選中數(shù)據(jù)源,點(diǎn)擊Configuration->Diagnostics,把Profile Connection Leak前打上即可。當(dāng)再次出現(xiàn)連接池泄漏時查看server日志便可找到具體發(fā)生泄露的代碼,并加以改正,通常打上finally塊,關(guān)閉連接。四、 系統(tǒng)日志通過系統(tǒng)的日志分析weblogic服務(wù)器及應(yīng)用程序出現(xiàn)的錯誤,找到可能影響系統(tǒng)性能的服務(wù)器和應(yīng)用的地方。舉例如下:1、已經(jīng)對用戶進(jìn)行響應(yīng)java.lang.IllegalStateException: Cannot forward a response that is already committedat weblo

7、ernal.RequestDispatcherImpl.forward(Request DispatcherImpl.java:110)at com.qtong.hebmc.ExceptionFilter.doFilter(ExceptionFilter.java:55)如上異常,為什么對用戶的response已經(jīng)提交給用戶了,就要懷疑代碼中某些地方在過濾器過濾之前已經(jīng)顯示的提交或關(guān)閉了對用戶的響應(yīng)的outputstream。有些時候在過濾器中要做后續(xù)的一些處理,這時候filter中出現(xiàn)異常,有可能導(dǎo)致數(shù)據(jù)庫連接不釋放及一些后續(xù)的處理得不到執(zhí)行。2、線程一直處于s

8、tuck狀態(tài)<STUCK ExecuteThread: '32' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "632" seconds working on the request "Http Request: /stat/test/TestCtrl.statOracleTest.do", which is more than the configured time (StuckThreadMaxTime) of &quo

9、t;600" seconds. 這句表名線程32執(zhí)行時間超過600秒設(shè)定的時間。檢查這個請求是否會導(dǎo)致線程執(zhí)行超時,是否是長時間的處理。當(dāng)前系統(tǒng)狀態(tài)是否正常,是否是cpu、內(nèi)存等資源不足導(dǎo)致的線程執(zhí)行緩慢。重要的一點(diǎn)要查看線程32是否變成unstuck狀態(tài)。否則就有可能出現(xiàn)線程死鎖。<STUCK ExecuteThread: '32' for queue: 'weblogic.kernel.Default (self-tuning)' has become "unstuck".>3、數(shù)據(jù)庫連接問題java.sql.SQL

10、Exception: BEAOracle JDBC DriverError establishing socket to host and port: dbnew2_vip:1521. Reason: Connection refused當(dāng)出現(xiàn)此問題時,一般系統(tǒng)都執(zhí)行緩慢。檢查是否ping通數(shù)據(jù)庫,是否有權(quán)限,也可以請數(shù)據(jù)庫工程師查看數(shù)據(jù)庫是否運(yùn)行正常。檢查dns服務(wù)器或本地dns映射是否正常,域名dbnew2_vip能否解析。4、檢查Weblogic記錄的Error級別的日志。找到可能影響系統(tǒng)運(yùn)行及功能的問題。如:#<Feb 28, 2010 4:26:20 PM GMT+08:00&

11、gt; <Error肅移動</option><option value=". Request parsing failed, Code: -1>此出,說明線程1執(zhí)行請求“/service/js/mareal/mareal.肅移動</option><option value=”的時候,weblogic對這個請求解析失敗,可以請工程師修改請求的格式,以免影響應(yīng)用的功能。5、class文件找不到at java.lang.Class.forNameImpl(Native Method)at java.lang.Class.forName(Cla

12、ss.java:130)at com.mareal.sterna.Controller.parseController(Controller.java:67). 20 more檢查控制器是否書寫正確,還是這個java文件沒有正確編譯部署。6、郵件服務(wù)器異常mons.mail.EmailException: Sending the email to the following server failed : 5:25Caused by: javax.mail.MessagingException: Could not connect to SMTP host: 218.2

13、07.67.75, port: 25; nested exception is:.SocketException: Connection timed out:could be due to invalid address檢查郵件服務(wù)器是否有問題,ip是否沖突,網(wǎng)絡(luò)連接是否正常,以免影響應(yīng)用的功能。7、是否是算法的bug導(dǎo)致的oom。如下:java.lang.OutOfMemoryError: Initializing Writerat com.sun.imageio.plugins.jpeg.JPEGImageWriter.initJPEGImageWriter(Native Method)a

14、t com.sun.imageio.plugins.jpeg.JPEGImageWriter.<init>(JPEGImageWriter.java:206)at com.sun.imageio.plugins.jpeg.JPEGImageWriterSpi.createWriterInstance(JPEGImageWriterSpi.java:130)at javax.imageio.spi.ImageWriterSpi.createWriterInstance(ImageWriterSpi.java:358)at javax.imageio.ImageIO$ImageWriterIterator.next(ImageIO.java:851)at javax.imageio.ImageIO$ImageWriterIterator.next(ImageIO.java:835)at javax.imageio.ImageIO.write(ImageIO.java:1473)at javax.imageio.ImageIO.write(ImageIO.java:15

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論