分析J2SE和J2EE的Java剖析程式JProfiler
JProfiler是一個全功能的Java剖析工具,它不僅可以用於檢查和跟蹤系統整體的效能,還支援將軟體作為外掛組合到強大的應用程式中,提供多種ide和應用伺服器整合的實用型途徑,同時在軟體自帶的視覺化gui介面我們可以直觀的瞭解到應用程式所存在的效能瓶頸以及記憶體漏失,JProfiler的GUI可以讓你方便的找到效能瓶頸、記憶體洩漏(memory leaks)、並解決執行執行緒的問題。JProfiler是一個功能強大的工具,您可以使用它以動態的方式分析基於Java的應用程式,並使您能夠分析它們,從而最佳化效能。
JProfiler mac軟體特色
實時分析本地會話
一旦定義了應用程式的啟動方式,JProfiler就可以對其進行概要分析,並立即從配置的JVM中檢視實時資料。為了消除對會話配置的需要,您可以使用 眾多IDE外掛中的一個來從您喜歡的IDE中分析應用程式。
實時分析遠端會話
透過修改java start命令的VM引數,您可以讓任何Java應用程式從JProfiler GUI中偵聽連線。配置檔案應用程式不僅可以在本地計算機上執行,JProfiler還可以透過網路連線到配置檔案應用程式。此外,JProfiler 為所有流行的應用程式伺服器提供了 大量的整合嚮導,可幫助您設定應用程式以進行效能分析。
離線分析和觸發器
您不必將JProfiler GUI連線到配置檔案應用程式以對其進行分析:使用 離線分析, 您可以使用JProfiler強大的觸發系統或JProfiler API來控制分析代理並將快照儲存到磁碟。稍後您可以在JProfiler GUI中開啟這些快照,或使用命令列匯出工具或匯出ant任務以程式設計方式匯出概要分析檢視。
快照比較
在JProfiler中,您可以將所有當前效能分析資料的快照儲存到磁碟。JProfiler提供了豐富的比較工具,可以檢視兩個或更多快照之間發生了哪些變化。或者,您可以使用命令列比較工具或比較ant任務以程式設計方式建立比較報告。
檢視HPROF快照
JProfiler可以開啟已使用jVMsole或jmap等JVM工具或由-XX:+ HeapDumpOnOutOfMemoryError JVM引數觸發的HPROF快照。
請求跟蹤
憑藉創新的請求跟蹤概念,JProfiler可以更輕鬆地分析並行和多執行緒程式設計。請求跟蹤透過呼叫樹檢視中的超連結將呼叫站點與不同執行緒之間的執行站點連線起來。可以跟蹤以下多執行緒系統:
來自java.util.concurrent包的執行程式
Kotlin協同程式
AWT活動
SWT活動
執行緒開始
此外,如果在JProfiler中分析和開啟兩個JVM,JProfiler可以跟蹤跨JVM邊界的呼叫。可以跟蹤以下遠端呼叫。
HTTP請求
RMI打電話
Web服務呼叫
遠端EJB呼叫
輕鬆建立自定義探針 JProfiler提供了一個自定義探針嚮導,允許您直接在JProfiler GUI中定義自定義探針。您的自定義探針由JProfiler部署到配置檔案應用程式,您甚至不必在更改或新增自定義探針時重新啟動配置檔案應用程式。以下是JProfiler中概要分析檢視的高階概述:
記憶體分析
JProfiler的記憶體檢視部分提供有關記憶體使用情況的動態更新檢視,以及顯示有關分配點的資訊的檢視。所有檢視都有多個聚合級別,可以顯示實時和垃圾回收物件
所有物件
顯示堆上所有物件的類或包,包含例項計數和大小資訊。您可以標記當前值並顯示差異。
錄製的物件
顯示所有記錄物件的類或包。您可以標記當前值並顯示差異。
分配呼叫樹
顯示一個呼叫樹或方法,類,包或Java EE元件,其中包含所選類的帶註釋的分配。
分配熱點
顯示分配所選類的方法,類,包或Java EE元件的列表。您可以標記當前值並顯示差異。可以為每個熱點顯示回溯樹。
類跟蹤器
顯示一個時間線,其中包含所選類的例項計數圖。
堆沃克
在JProfiler的堆walker中,您可以透過執行選擇步驟獲取堆的快照並深入檢視感興趣的物件。堆walker有五個檢視:
類
顯示所有類及其例項。
分配
顯示記錄物件的分配樹和分配熱點。
最大的物件
顯示阻止堆的最大部分被垃圾收集的物件。可以擴充套件支配樹以顯示這些保留的物件。
參考
顯示具有原始資料的單個物件的傳出引用和帶有“顯示垃圾收集器根路徑”功能的傳入引用。還提供傳入和傳出引用的累積檢視。在傳出引用檢視中,您可以應用篩選器。有兩種不同的過濾器型別:按原始值過濾和使用指令碼過濾。
資料
顯示單個物件的例項和類資料。
時間
顯示記錄物件的時間分辨直方圖。
檢查
在檢查檢視中,您可以對當前物件集執行多個檢查,以便以各種方式分析物件。
圖形
在圖中,您可以新增來自不同物件集的物件,並透過開啟傳入和傳出引用,查詢所選物件之間的路徑以及顯示垃圾收集器根的路徑來探索它們之間的關係。
CPU分析
JProfiler提供了各種記錄呼叫樹的方法,以最佳化效能或細節。可以為所有檢視選擇執行緒或執行緒組以及執行緒狀態。可以在方法,類,包或Java EE元件級別上聚合所有檢視。CPU檢視部分包含:
呼叫樹
顯示JVM中所有已記錄呼叫序列的累積自上而下的樹。JDBC,JMS和JNDI服務呼叫被註釋到呼叫樹中。可以將呼叫樹拆分為不同的請求URL到servlet或JSP。您可以標記“異常方法執行記錄”的方法,並分別檢視最慢的呼叫。透過請求跟蹤,您可以將呼叫站點連線到多執行緒應用程式中的執行站點。
熱點
顯示最耗時的方法列表。可以為每個熱點顯示回溯樹。
呼叫圖
顯示從所選方法,類,包或Java EE元件開始的呼叫序列圖。
方法統計
顯示有關所有方法的呼叫時間分佈的統計資訊以及可用於發現異常值的呼叫時間分佈圖。
呼叫追蹤器
顯示按執行緒,包和類分組的方法呼叫的記錄時間順序跟蹤。
執行緒分析
對於執行緒分析,JProfiler提供以下檢視:
執行緒歷史
顯示具有執行緒活動和執行緒狀態的時間線。
執行緒監視器
顯示所有活動執行緒及其當前活動的列表。
執行緒轉儲
您可以線上程轉儲檢視中進行多個執行緒轉儲並對其進行分析。
監控分析
對於監視器分析,JProfiler提供以下檢視:
當前鎖定圖
顯示JVM中所有等待和阻塞情況的圖表。
電流監視器
顯示當前使用的監視器及其關聯的執行緒。
鎖定歷史圖表
以圖形形式顯示記錄的等待和阻止情況的歷史記錄。
監控歷史記錄
顯示記錄的等待和阻止事件的歷史記錄。
監控使用情況統計
顯示按監視器,執行緒和監視器類分組的監視器的統計資訊。
VM遙測
為了觀察JVM的內部狀態,JProfiler提供了各種遙測檢視:
堆
顯示一個時間線,其中包含已使用堆和堆大小的圖形。
錄製的物件
顯示一個時間線,其中包含已記錄的活動物件和陣列的圖形。
記錄的吞吐量
顯示時間線,其中包含已記錄物件的物件建立和垃圾回收率的圖表。
GC活動
顯示帶有垃圾收集器活動圖表的時間線。
類
顯示帶有已載入類圖的時間線。
主題
顯示帶有活動執行緒圖的時間線。
CPU負載
顯示時間線,其中包含已配置應用程式生成的CPU負載的圖表。
資料庫
JProfiler支援以下資料庫的特定探測:
JDBC
JPA / Hibernate
MongoDB的
卡桑德拉
HBase的
JEE和探針
JProfiler提供探針:
JDBC
JPA / Hibernate
ETC.
JNDI
RMI
網頁服務
Servlet的
檔
套接字
流程
探針顯示以下資訊:
時間線
在時間線檢視中,探針將其控制物件顯示為沿時間軸的彩色條。控制元件物件是與單個探測事件關聯的長壽命物件。例如,在JDBC探針中,控制物件是資料庫連線。時間線條上的顏色對應於控制物件可以處於的不同狀態。
控制物件
有關控制物件的表格詳細資訊顯示在控制物件檢視中。它顯示有關控制物件的更多詳細資訊以及記錄事件的統計資訊,例如檔案I / O的總吞吐量。透過過濾器控制元件和底部的匯流排,您可以對控制元件物件的子集進行快速求和。某些探針在巢狀表中顯示其他詳細資訊,您可以在其中開啟一個對話方塊,以更詳細地顯示有趣的多行值。例如,程式的命令列引數可能非常長。
熱點
在熱點檢視中,探針顯示由執行時間排序的探測事件釋出的有效負載名稱的熱點。例如,檔案探針顯示檔名,JDBC探針顯示SQL字串,JNDI探針顯示查詢。每個熱點都可以擴充套件,以顯示有助於熱點的背景痕跡。
遙測資料
在遙測檢視>中,您可以看到探測器釋出的各種遙測。
活動
事件檢視顯示探測器記錄的單個事件。事件具有執行緒和堆疊跟蹤資訊,您可以輕鬆跳轉到關聯的控制物件。同樣,過濾器和總行允許您對所選事件求和。
分析J2SE和J2EE的Java剖析程式JProfiler來源於:%3D
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70018369/viewspace-2903999/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JProfiler for Mac:深度剖析Java應用程式效能MacJava
- Java開發分析軟體:JProfiler for MacJavaMac
- JProfiler 14 for Mac(專業的Java效能分析工具)MacJava
- j2ee應用調優的利器-JProfiler
- java剖析工具哪款好用?JProfiler 13中文推薦~Java
- j2se sdk和j2EE sdk,JDK,JKE的區別JDK
- 深入剖析Java應用效能,JProfiler for Mac/win助您輕鬆最佳化!JavaMac
- JProfiler for Mac/win- 提升Java應用程式的效能利器!MacJava
- J2SE J2EE J2ME的區別
- JProfiler Java for Mac/win中文版效能分析工具安裝教程JavaMac
- JProfiler 14 for Mac(Java開發分析工具)14.0啟用版MacJava
- JProfiler for Mac 14.0.0啟用碼(Java開發分析軟體)MacJava
- java異常分析;剖析printStackTrace和fillInStackTraceJava
- Java分析工具推薦:最新JProfiler 14 Mac 啟用版下載JavaMac
- J2SE - Java命令執行class和jar檔案JavaJAR
- J2SE的基本簡介與J2EE/J2ME的差異
- Java(j2se)編寫的程式如何生成可執行檔案?Java
- 【java】使用jprofiler進行效能測試Java
- Intellij IDEA 整合 JProfiler 效能分析神器IntelliJIdea
- 深入剖析Java中的裝箱和拆箱Java
- 剖析程式中SVCHOST的作用和原理(轉)
- JProfiler 13 Mac版,JProfiler 13註冊碼Mac
- 【Java基礎】--J2SE深度總結Java
- 高質量的j2se程式,web applicationWebAPP
- JProfiler for Mac(Java開發分析軟體)v14.0.0啟用版安裝/完美使用MacJava
- 「支援M1/M2」JProfiler14 for Mac啟用安裝,Java開發分析MacJava
- Java集合框架原始碼剖析:TreeSet 和 TreeMapJava框架原始碼
- Java集合框架原始碼剖析:HashSet 和 HashMapJava框架原始碼HashMap
- Java 集合框架 HashSet 和 HashMap 原始碼剖析Java框架HashMap原始碼
- Java EE/J2EE物件導向程式設計之道Java物件程式設計
- JProfiler for Mac:提升效能和診斷問題的終極工具Mac
- 【Java X 原始碼剖析】Collection的原始碼分析-JDK1.8-仍在更新Java原始碼JDK
- 【Java X 原始碼剖析】Map的原始碼分析--JDK1.8-仍在更新Java原始碼JDK
- Java併發程式設計:深入剖析ThreadLocalJava程式設計thread
- Guava Cache:核心引數深度剖析和原始碼分析Guava原始碼
- 【J2EE】:Java EE應用的元件Java元件
- 最新JProfiler 14 Mac破解版(Java開發分析工具) 附註冊碼+完整圖文安裝教程MacJava
- [java]HashMap原理剖析JavaHashMap