




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
有的時候Tomcat跑Web應(yīng)用會慢慢死掉,CPU100%占用。一般情況下是程序哪里出了問題,慢慢的DEBUG,幾乎翻遍所有的代碼,是不是很累?這里介紹一下JProfiler,比較優(yōu)秀的性能監(jiān)控和分析工具。JProfiler我用的是4.3.3版本,他是收費(fèi)的,不過google上面很多注冊碼可供使用。安裝的時候會提示一些比如尋找JVM等過程,這里就不多說了。安裝完JProfiler,運(yùn)行,出現(xiàn)如下界面:由于我們是要創(chuàng)建對本地tomcat的監(jiān)控,選擇anapplicationserver,locallyorremotely.在接下來的窗口中,選擇tomcat及版本,下一步,選擇本地:
下一步,選擇啟動批處理文件■ViLHid~tpicbeTfiicwtSrLocgiethe^dFliavtStHfiikacatwHwiM際T??t小habn.kLitd£3l?LM-ripltdmwJW£0w?口洲mixft][i■浦如如血岫輸ii'"upbal||...|LQVMiUtLtrD^Uote:dielm^IkmH虹*贏sI.FwherfIhc如nn如xnptH應(yīng)品rwdfed.Anew血加FaprA'qvdhe-沖網(wǎng)m酩甘做齦"下一步,選擇JVM類型:KL雄mwrli].Leciteri-vtsir^l4,CMq?NMLBW時LOW*州。恤KL雄mwrli].Leciteri-vtsir^l4,CMq?NMLBW時LOW*州。恤?.dwlrofcrinHI.Rmlwd*HWe刑Venku:頗:偵rniEi切mdkoxk血fttmkdhwtcn包土dw4"SMH-接著選擇JProfiler的監(jiān)聽端口:IntteEMitnViE^rdl^puckcTokb!ff.iL.Oww^rEZ.Ltidor'ffiljt].Leciteri-vtsir^llOwbJMMLUwHeiMtaghome州福啪?.Q?>riffifliuhDriLRhMChw?眠portusedhr(heprcfi1加(omwtlcnUe-ue疝a靴ml*Kba配hr拙wwrN尊哽溯(1葉纓加視IntteEMitnViE^rdl^puckcTokb!ff.iChwseMlvendcfji心onandmode電灌ijwutevnki融』尚如城thdtN貳u./usngImirot■?業(yè)細(xì)nHCFrtF鼻褶?!he誠臨呵*□fribtjw接著,選擇直接啟動:InfEfrn£LJiiVixjEfi.tpacbeTpkaII.崩LBw(sHtcMiWls□尊i.CwweM匕3瞬pnf蛔perlEEfawuMtH/rwdtTOlriffiMftdttfBOhww對idkriq麗tfartheJPMllerGUI岫《gaWMt*g*程網(wǎng)if嘩MlKTiMMTdHthn阿砒M^rontiv勤歸iUfrmtnibtfen"Ung呼WMfijaCDnwtftjrifnonIt#QJ2piHfwriiidt*WtCTWVmfft.tsrwgnxnd?itowiifitf1umw,witetutim|inrtrg曲i唾拙s.二sSSplnwd蜥|fyoudnHtr<N袖,mhantodufnthetruiidJMS.W,白!hr邪-Xi出附dMmiK融W此JiWgfte.Ihtr響尚*日btwpibif■■扣卜面會有一個很重要的提示,可能很多人在這里都沒有注意而總是配置不好JProfiler:SJlfit維mMMluifdi-[CtDiPELCImplicit16D.]Z.l?cd>T!wli'LCWJWLOwb湖叫網(wǎng)S.OiwjtiiLDrafie-kPlbrlArttmadiicrfnti?.RidndPerfcrmrequrodmodihMtg*著牌疝w時h^fft4td山地U商eumNimM.加ci如怖Zhe曲g血thd。由ntdih瓶由dq陷ba如標(biāo)邙怔tm妙xlMT■聃獨(dú)械W5mL5J(taftf知W依CMwit7tlw皿甘砒—inimHut+|匚511齡?|!日*141叩峭_啪偵訝出"Wdi^y.DwurT耳11瞄I如MlWhlFrofMalalEiHtHlmwiL,r?CIhfiAM萌iWdilyj.irtfr業(yè)』古程iwitoifd.第一,需要把-agentlib:jprofilerti=port=8849,nowait,id=103,config二C:\DocumentsandSettings\stefanie_wu\.jprofiler4\config.xml〃〃-Xbootclasspath/a:D:\ProgramFiles\jprofiler4\bin\agent.jar〃-Xbootclasspath/a:D:\usr\agent.jar兩個參數(shù)加載啟動項(xiàng)中,第二,要把D:\ProgramFiles\jprofiler4\bin\windows放在PATH中。我是使用.bat來啟動tomcat的,所以在startup.bat中加入一段代碼:setJAVA_OPTS=%JAVA_OPTS%-agentlib:jprofilerti=port=8849,nowait,id=103,config二C:\DocumentsandSettings\stefanie_wu\.jprofiler4\config.xml-Xbootclasspath/a:D:\ProgramFiles\jprofiler4\bin\agent.jar〃-Xbootclasspath/a:D:\usr\agent.jar但是這樣啟動會有問題,因?yàn)槠渲新窂桨丝崭?,所以拷貝comfig.xml和agent.jar到一個新的路徑下面,比如:setJAVA_OPTS=%JAVA_OPTS%-agentlib:jprofilerti=port=8849,nowait,id=102,config二D:\usr\config.xml-Xbootclasspath/a:D:\usr\agent.jar這里的jprofilerti=port=8849就是剛才設(shè)置的jprofiler監(jiān)控端口。設(shè)置完這些,通過startup.bat啟動tomcat,然后Frnf1i-1ngSet十ing事SelectapraHfingtdiingftEmpale:啊featurefenabled,highCPUpfoHI回detailCu^tomzE!frahingSettingsandFilterw口grptlDnIhs£TtoFle/&fdl"EBaturHniodeThtdefaultIfsuitablefore^^luatingProfilerandForgettingagener-slowr^iewoFtheappicabon'sresoLrccu部inths轉(zhuǎn)出時』CPUprofliraifaccurate(d?namehstnjmentaccin)withstandardfiterjendtled.Startupl~~lStartupl~~lRecordCPUdataonstart叩F~IReccrddhe-attmeonctartup點(diǎn)OKHqjjliniin■■IvralhaiCfH*-rFuTiliEd.317JProfiler是一款Java的性能監(jiān)控工具。可以查看當(dāng)前應(yīng)用的對象、對象引用、內(nèi)存、CPU使用情況、線程、線程運(yùn)行情況(阻塞、等待等),同時可以查找應(yīng)用內(nèi)存使用得熱點(diǎn),即:哪個對象占用的內(nèi)存比較多;或者CPU熱點(diǎn),即:哪兒方法占用的較大得CPU資源。我使用的是4.3.2版本,以前試用過3**版本,不過那個bug比較多,容易死,4**版本穩(wěn)定多了。有了上面那些信息對于系統(tǒng)的調(diào)優(yōu)會有很大幫助。這里提供有幾篇文章供參考:獲取、介紹,簡單入門,使用JProfiler解決實(shí)際問題。這幾篇文章基本介紹了常見東西了,下面說點(diǎn)心得。JProfiler監(jiān)控是要消耗系統(tǒng)資源的,所以一般情況下不要用于性能測試時候的監(jiān)控。如果要用于相對大壓力情況下,可以有選擇的打開監(jiān)控項(xiàng),不用所有都打開。主要有兩個,一個是內(nèi)存監(jiān)控,打開的情況下可以查找內(nèi)存分配熱點(diǎn)。一個是CPU監(jiān)控,打開的情況下可以查看CPU使用熱點(diǎn)。如圖所示,紅筆標(biāo)注部分。如果兩個都關(guān)閉的話,還是可以跑一定壓力的,同時還可以監(jiān)控對象數(shù)量。個人認(rèn)為最好用的(也是用的最多的)是查詢當(dāng)前的對象的數(shù)量。數(shù)量監(jiān)控很重要,如果你使用了單例,那么你只會看到有一個對象存在,如果多了就說明程序有問題了。同樣,如果應(yīng)用進(jìn)行一系列操作,檢查一下該銷毀的對象是否還繼續(xù)存在,如果沒有釋放,就得考慮是否存在內(nèi)存溢出了。JProfiler還提供了一個比較好的檢查內(nèi)存溢出得工具。他可以查找某個對象的引用情況,即:當(dāng)你發(fā)現(xiàn)某個該釋放掉的對象沒有釋放,就可以看一下哪個實(shí)例在引用它,找到了根即找到了溢出點(diǎn)。具體操作如下:在“MemoryViews”界面中右鍵選擇你要監(jiān)控的對象,選擇第一項(xiàng)“TakeHeapSnapshotforSelection”,選擇完成后會進(jìn)入
“HeapWalker”界面,界面下面提供幾個功能,選擇“References”即可。如圖:h^CiTiQr/U!^v?$HupW^ker
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第四章 第4節(jié)《光的折射》教學(xué)設(shè)計(jì)-2024-2025學(xué)年人教版物理八年級上學(xué)期
- 外債借入合同范本
- 索道運(yùn)輸合同范本
- 促銷合同范本
- 屏南租房合同范本
- 瓷磚的合同范本
- 干洗店轉(zhuǎn)讓合同范本
- 攝影師平面拍攝合同范本
- 個人門面房長期出租合同范本
- 心電圖正常課件
- 乳源瑤族自治縣鑫源環(huán)保金屬科技有限公司技術(shù)升級改造項(xiàng)目環(huán)境影響報告書
- 汽輪機(jī)熱平衡圖功率的核算方法
- 服裝廠安全生產(chǎn)評估報告
- 通力電梯KCE電氣系統(tǒng)學(xué)習(xí)指南
- 整理我的小書桌(課件)小學(xué)勞動二年級通用版
- 教學(xué)課件-《旅行社業(yè)務(wù)》-(中職)
- 第二章 第一節(jié) CT設(shè)備基本運(yùn)行條件
- 森林撫育施工組織設(shè)計(jì)
- 某道路拓寬工程施工組織設(shè)計(jì)
- 第一章染整工廠設(shè)計(jì)
評論
0/150
提交評論