JProfiler官方版是一個(gè)用于檢查和跟蹤系統(tǒng)(限于Java開發(fā)的)性能的工具。JProfiler通過實(shí)時(shí)監(jiān)控系統(tǒng)的內(nèi)存使用情況、監(jiān)視垃圾回收、線程運(yùn)行狀況等手段從而監(jiān)視JVM運(yùn)行情況及其性能。它把CPU、執(zhí)行緒和內(nèi)存的剖析組合在一個(gè)強(qiáng)大的應(yīng)用中。JProfiler可視化的GUI可讓你快速找到效能瓶頸、抓出內(nèi)存漏失(memoryleaks)、并解決執(zhí)行緒等問題。
功能特點(diǎn)
一、卓越的易用性
Profiler簡單而強(qiáng)大,同時(shí)它的配置會話是直接的,第三方集成使得開始輕松,分析數(shù)據(jù)以自然的方式呈現(xiàn)。在各個(gè)層次上,JProfiler經(jīng)過精心設(shè)計(jì),可以幫助您開始解決問題。
二、JDBC、JPA和NOSQL的數(shù)據(jù)庫分析
JProfiler的JDBC和JPA/Hibernate探測器以及MongoDB,Cassandra和HBase的NoSQL探測器顯示了數(shù)據(jù)庫訪問緩慢以及代碼緩慢的語句調(diào)用原因。從JDBC時(shí)間線視圖顯示所有與其活動的JDBC連接,通過熱點(diǎn)視圖,顯示各種遙測視圖的慢速語句和單個(gè)事件列表,數(shù)據(jù)庫探針是深入了解數(shù)據(jù)庫層的重要工具。
三、極好的支持JAVA企業(yè)版
在JProfiler中的大多數(shù)視圖中存在JEE的專用支持。例如,在JEE聚合級別中,您可以根據(jù)應(yīng)用程序中的JEE組件看到調(diào)用樹。另外,每個(gè)請求URI都會分配調(diào)用樹。此外,JProfiler在低級別分析數(shù)據(jù)之上添加了語義層,如在CPU分析視圖中呈現(xiàn)的JDBC,JPA/Hibernate,JMS和JNDI調(diào)用。憑借其JEE支持,JProfiler彌合了代碼分析器和高級JEE監(jiān)視工具之間的差距。
四、更高級別的分析數(shù)據(jù)
JProfiler有許多探針可以顯示JRE中有趣子系統(tǒng)的更高級別的數(shù)據(jù)。除了JavaEE子系統(tǒng),如JDBC,JPA/Hibernate,JSP/Servlets,JMS,Web服務(wù)和JNDI之外,JProfiler還提供了有關(guān)RMI調(diào)用,文件,套接字和進(jìn)程的高級信息。這些探針中的每一個(gè)都有自己的一組有用的視圖。所有這些視圖也可用于您可以在JProfiler中即時(shí)配置的自定義探針。
五、內(nèi)存泄漏分析
JProfiler的堆步行器為您提供了一個(gè)直觀的界面來解決簡單和復(fù)雜的內(nèi)存問題。5個(gè)不同的視圖和大量的檢查顯示當(dāng)前對象集的不同方面。每個(gè)視圖都提供對所選對象的基本見解,并允許您切換到不同的對象集。
六、廣泛的質(zhì)量保證能力
快照的豐富功能可以輕松跟蹤進(jìn)度。JProfiler對命令行操作有很強(qiáng)的支持。這包括配置,導(dǎo)出快照數(shù)據(jù)和從命令行創(chuàng)建快照比較的功能。與JProfiler綁定的ant任務(wù)允許您從構(gòu)建腳本執(zhí)行所有命令行操作。
七、最廣泛的支持平臺,IDE和應(yīng)用服務(wù)器
集成到所有流行的IDE中,使開發(fā)過程中的分析與運(yùn)行應(yīng)用程序一樣簡單。并且市場上幾乎所有應(yīng)用服務(wù)器的大量集成向?qū)Т_保您可以開始點(diǎn)擊幾次,而不是閱讀文檔。
八、低開銷
JProfiler只在需要時(shí)記錄數(shù)據(jù)。實(shí)際上,您可以使用JProfiler代理啟動應(yīng)用程序,并在以后連接JProfilerGUI。當(dāng)您不記錄任何數(shù)據(jù)時(shí),開銷非常小。JProfiler顯示您的性能分析設(shè)置如何影響性能,并為您提供模板以快速選擇常見用例的性能分析設(shè)置。
九、強(qiáng)大的CPU分析器
修復(fù)性能瓶頸是分析器最常用的用例。使用JProfiler,當(dāng)您嘗試找到問題的原因時(shí),您將具有決定性的優(yōu)勢。調(diào)用樹視圖過濾器,聚合級別和線程狀態(tài)選擇器只是JProfiler在此領(lǐng)域的多功能性的一些示例。
十、集成螺紋輪廓儀
使用JProfiler可以解決一系列不透明的問題,例如在使用過多鎖定的多線程應(yīng)用程序中增加活動性。線程分析不僅在JProfiler中有一個(gè)單獨(dú)的視圖部分,它也被緊密地集成到CPU分析視圖中。
工作模式
一、本地會話的現(xiàn)場分析
一旦你定義了應(yīng)用程序如何啟動,JProfiler就可以分析它,您可以立即看到JVM實(shí)時(shí)數(shù)據(jù)。為了消除會話配置的需要,您可以使用一個(gè)多IDE插件,并從你喜歡的IDE中分析的應(yīng)用程序。
二、遠(yuǎn)程會話活動的分析
通過修改Java啟動命令的虛擬參數(shù)就可以得到任何Java應(yīng)用程序偵聽來自JProfiler GUI的連接。該應(yīng)用程序不僅可以在本地計(jì)算機(jī)上運(yùn)行,JProfiler還可以連接到在網(wǎng)絡(luò)上配置的應(yīng)用程序。此外,提供的JProfiler眾多集成的向?qū)樗辛餍械膽?yīng)用服務(wù)器,以幫助您在分析設(shè)置你的應(yīng)用程序。
三、離線分析和觸發(fā)器
有了離線分析,您可以使用JProfiler的強(qiáng)大的觸發(fā)器系統(tǒng)或JProfiler的API控制剖析代理和快照保存到磁盤。在稍后的時(shí)間,你可以打開JProfiler的GUI,分析這些快照。
四、快照比較
你可以保存當(dāng)前所有分析數(shù)據(jù)到磁盤的快照。JProfiler提供了豐富的比較設(shè)備,看看兩個(gè)或多個(gè)快照之間不同之處。另外,您可以編程方式創(chuàng)建比較報(bào)告使用命令行比較工具還是比較ant任務(wù)。
五、查看一個(gè)HPROF快照
JProfiler可以打開HPROF已采取與JVM工具如JConsole的或JMAP或已經(jīng)由-XX觸發(fā)快照+HeapDumpOnOutOfMemoryErrorJVM參數(shù)。
六、請求跟蹤
隨著請求跟蹤的創(chuàng)新理念,使的JProfiler并行和多線程編程更容易的分析。請求跟蹤連接與調(diào)用樹視圖的超鏈接不同的線程之間執(zhí)行站點(diǎn)調(diào)用點(diǎn)。
七、輕松創(chuàng)建定制探頭
JProfiler提供的自定義探測向?qū)В鼓梢灾苯釉贘Profiler的GUI定義自定義探頭。您的自定義探針部署到JProfiler配置的應(yīng)用程序,你甚至不必更改或添加自定義探頭時(shí)重新啟動該應(yīng)用程序。
更新日志
v14.0.5版本
新功能:
支持MongoDB 5.2
支持Spring WebFlux客戶端6.1.14+
對ktor 3的支持
防止Java 24的本機(jī)代理警告+
Bug修復(fù):
JProfiler 14.0.3中的回歸:通過sudo使用用戶開關(guān)遠(yuǎn)程連接到Docker容器不再有效
修復(fù)了在某些情況下遠(yuǎn)程連接到具有不同架構(gòu)的Docker容器的問題



