網友評分:
5分
JProfiler是一款面向Java開發者的專業性能分析軟件,專為Java程序的性能調試、系統優化與問題排查打造,是程序員完成開發、后期測試工作的核心輔助工具。在Java項目開發與測試環節,程序常會出現內存泄漏、CPU占用過高、線程阻塞、垃圾回收異常等問題,普通調試工具很難精準定位問題根源,而這款軟件可通過多維度數據監測,直觀呈現程序運行時的內存占用、CPU消耗、線程狀態、類加載數量等關鍵指標。軟件搭載AI探測器,優化了IDE界面與安裝流程,支持Linux系統下所有OpenJDK變體運行,還可自定義探針事件、添加時間線直方圖視圖,能適配不同規模的Java項目分析需求。

1、新增AI探測器。
2、全新IDE用戶界面,優化安裝程序界面設計。
3、優化安裝程序體驗,無需默認管理員權限即可安裝。
4、支持UI縮放,可在Linux系統上適配所有OpenJDK變體運行JProfiler UI。
5、支持大量記錄事件與控制對象,移除探針事件合并功能,可在高級探針會話設置中配置探針事件的最大文件大小。
6、為所有過濾事件新增次時間線直方圖視圖,可在該視圖中拖動添加事件過濾器。
使用JProfiler診斷性能
完成JProfiler的設置后,即可對Producer的性能進行診斷。
Overview
在概覽頁面可清晰查看內存使用量、垃圾收集活動、類加載數量、線程個數和狀態、CPU使用率等指標隨時間變化的趨勢。

可作出如下基本判斷:
程序運行過程中會產生大量對象,這些對象生命周期極短,大部分能被垃圾收集器及時回收,不會造成內存無限增長。
加載類的數量在程序初始階段增長較快,隨后保持平穩,符合正常運行預期。
程序運行過程中有大量線程處于阻塞狀態,需要重點排查分析。
程序剛啟動時CPU使用率較高,需要進一步探究具體原因。

CPU views
CPU views下的各個子視圖,展示了應用中各方法的執行次數、執行時間、調用關系等信息,可幫助定位對應用性能影響最大的方法。
Call Tree
Call tree通過樹形圖清晰展現方法間的層次調用關系,同時JProfiler會將子方法按執行總時間由大到小排序,便于快速定位關鍵方法。

對Producer而言,方法SendProducerBatchTask.run()耗時最多,繼續向下查看可發現,該方法的主要時間消耗在Client.PutLogs()的執行上。
Hot Spots
若應用方法數量較多,且多個子方法執行時間接近,使用hot spots視圖可更快定位問題。該視圖可根據方法的單獨執行時間、總執行時間、平均執行時間、調用次數等屬性排序,其中單獨執行時間為該方法總執行時間減去所有子方法的總執行時間。

數據采集模式
JProfiler提供兩種數據采集模式:Sampling和Instrumentation。
Sampling:適用于不要求數據完全精確的場景,優點是對系統性能影響較小,缺點是不支持部分特性,如方法級別的統計信息。
Instrumentation:完整功能模式,統計信息精度更高,缺點是分析類數量較多時,對應用性能影響較大,通常需要搭配Filter使用以降低影響。
因需要獲取方法級別的統計信息,可選擇Instrumentation模式,同時配置Filter,讓代理僅記錄Java包com.aliyun.openservices.aliyun.log.producer下的類,以及com.aliyun.openservices.log.Client類的CPU分析數據。
應用啟動模式
為JProfiler代理指定不同參數,可控制應用的啟動模式。
等待模式:僅當JProfiler GUI與代理建立連接并完成分析配置設置后,應用才會正式啟動,該模式可獲取應用啟動時期的分析數據,對應命令為-agentpath:=port=8849。
Visual Studio Code(微軟代碼編輯器) V1.117.0 官方版
150.7M / 簡體中文 /9.7
Notepad++ V8.9.3 官方最新版
6.49M / 多國語言 /5.7
核桃編程電腦版 V3.2.37.0 官方版
606.08M / 簡體中文 /8.3
猿編程PC版 V5.20.0 官方版
239M / 簡體中文 /8.2
TeXstudio(latex編輯器) V4.9.3 官方版
129.81M / 英文 /7.6
python for windows(python編程開發工具) V3.14.4 官方最新版
28.66M / 英文 /7