專(zhuān)業(yè)提供無(wú)毒且安全的軟件及游戲下載!
當(dāng)前位置:首頁(yè) > 電腦軟件 > 編程開(kāi)發(fā) >JProfiler中文版 v11.1.3 最新版

JProfiler中文版 v11.1.3 最新版

  • 軟件大?。?/em>103MB
  • 更新日期:2021-06-19
  • 語(yǔ)言:簡(jiǎn)體中文
  • 類(lèi)別:編程開(kāi)發(fā)
  • 適用環(huán)境:WinAll
  • 安全檢測(cè): 無(wú)插件 360通過(guò) 騰訊通過(guò) 金山通過(guò) 瑞星通過(guò)
  • 本地下載

    普通http下載速度慢

軟件介紹

JProfiler是一款專(zhuān)門(mén)為Java推出的性能分析軟件,它的主要功能是幫助用戶監(jiān)視JVM的運(yùn)行情況和性能,通過(guò)對(duì)系統(tǒng)內(nèi)存使用情況的監(jiān)控,幫助用戶分析程序中存在的各種問(wèn)題。JProfiler使用起來(lái)很簡(jiǎn)單,是大家剖析Java必備的工具,有需要的用戶敬請(qǐng)下載。

軟件介紹

JProfiler軟件特色

使用方便

界面操作友好

對(duì)被分析的應(yīng)用影響小

CPU、Thread、Memory分析功能尤其強(qiáng)大

支持對(duì)jdbc、noSql、jsp、servlet、socket等進(jìn)行分析

支持多種模式(離線,在線)的分析

JProfiler功能介紹

JProfiler是一個(gè)全功能的Java剖析工具(profiler),專(zhuān)用于分析J2SE和J2EE應(yīng)用程序。它把CPU、執(zhí)行緒和內(nèi)存的剖析組合在一個(gè)強(qiáng)大的應(yīng)用中。JProfiler可提供許多IDE整合和應(yīng)用服務(wù)器整合用途。JProfiler直覺(jué)式的GUI讓你可以找到效能瓶頸、抓出內(nèi)存漏失(memoryleaks)、并解決執(zhí)行緒的問(wèn)題。它讓你得以對(duì)heapwalker作資源回收器的Rootanalysis,可以輕易找出內(nèi)存漏失;heap快照(snapshot)模式讓未被參照(reference)的對(duì)象、稍微被參照的對(duì)象、或在終結(jié)(finalization)隊(duì)列的對(duì)象都會(huì)被移除;整合精靈以便剖析瀏覽器的Java外掛功能。

JProfiler安裝步驟

1、雙擊“jprofiler_windows-x64_11_0.exe”開(kāi)始加載安裝包

安裝步驟1

2、進(jìn)入到安裝界面,默認(rèn)安裝到C盤(pán),選擇第二項(xiàng)可以自定義

安裝步驟2

3、點(diǎn)擊next出現(xiàn)許可協(xié)議,選擇第一項(xiàng)也就是我同意

安裝步驟3

4、選擇軟件安裝目錄,默認(rèn)為“C:\Program Files\jprofiler11”

安裝步驟4

5、繼續(xù)next就會(huì)開(kāi)始jprofiler 11的安裝了

安裝步驟5

6、稍等一會(huì)兒完成jprofiler 11的安裝

JProfiler使用教程

JProfiler 設(shè)置

數(shù)據(jù)采集模式

JProfier 提供兩種數(shù)據(jù)采集模式 Sampling 和 Instrumentation。

Sampling - 適合于不要求數(shù)據(jù)完全精確的場(chǎng)景。優(yōu)點(diǎn)是對(duì)系統(tǒng)性能的影響較小,缺點(diǎn)是某些特性不支持(如方法級(jí)別的統(tǒng)計(jì)信息)。

Instrumentation - 完整功能模式,統(tǒng)計(jì)信息也是精確的。缺點(diǎn)是如果需要分析的類(lèi)比較多,對(duì)應(yīng)用性能影響較大。為了降低影響,往往需要和 Filter 一起使用。

由于我們需要獲取方法級(jí)別的統(tǒng)計(jì)信息,這里選擇了 Instrumentation 模式。同時(shí)配置了 Filter,讓 agent 只記錄位于 Java 包c(diǎn)om.aliyun.openservices.aliyun.log.producer下的類(lèi)和類(lèi)com.aliyun.openservices.log.Client的 CPU 分析數(shù)據(jù)。

應(yīng)用啟動(dòng)模式

通過(guò)為 JProfiler agent 指定不同的參數(shù)可以控制應(yīng)用的啟動(dòng)模式。

等待模式 - 只有在 Jprofiler GUI 和 agent 建立連接并完成分析配置設(shè)置后,應(yīng)用才會(huì)真正啟動(dòng)。在這種模式下,您能夠獲取應(yīng)用啟動(dòng)時(shí)期的分析數(shù)據(jù)。對(duì)應(yīng)的命令為-agentpath:=port=8849。

立即啟動(dòng)模式 - 應(yīng)用會(huì)立即啟動(dòng),Jprofiler GUI 會(huì)在需要時(shí)和 agent 建立連接并設(shè)置分析配置。這種模式相對(duì)靈活,但會(huì)丟失應(yīng)用啟動(dòng)初期的分析數(shù)據(jù)。對(duì)應(yīng)的命令為-agentpath:=port=8849,nowait。

離線模式 - 通過(guò)觸發(fā)器記錄數(shù)據(jù)、保存快照供事后分析。對(duì)應(yīng)的命令為-agentpath:=offline,id=xxx,config=/config.xml。

因?yàn)槭窃跍y(cè)試環(huán)境,同時(shí)對(duì)應(yīng)用啟動(dòng)初期的性能也比較關(guān)注,這里選擇了默認(rèn)的等待模式。

使用 JProfiler 診斷性能

在完成 JProfiler 的設(shè)置后,便可以對(duì) Producer 的性能進(jìn)行診斷。

Overview

在概覽頁(yè)我們可以清晰的看到內(nèi)存使用量、垃圾收集活動(dòng)、類(lèi)加載數(shù)量、線程個(gè)數(shù)和狀態(tài)、CPU 使用率等指標(biāo)隨時(shí)間變化的趨勢(shì)。

使用教程1

通過(guò)此圖,我們可以作出如下基本判斷:

程序在運(yùn)行過(guò)程中會(huì)產(chǎn)生大量對(duì)象,但這些對(duì)象生命周期極短,大部分都能被垃圾收集器及時(shí)回收,不會(huì)造成內(nèi)存無(wú)限增長(zhǎng)。

加載類(lèi)的數(shù)量在程序初始時(shí)增長(zhǎng)較快,隨后保持平穩(wěn),符合預(yù)期。

在程序運(yùn)行過(guò)程中,有大量線程處于阻塞狀態(tài),需要重點(diǎn)關(guān)注。

在程序剛啟動(dòng)時(shí),CPU 使用率較高,需要進(jìn)一步探究其原因。

CPU views

CPU views 下的各個(gè)子視圖展示了應(yīng)用中各方法的執(zhí)行次數(shù)、執(zhí)行時(shí)間、調(diào)用關(guān)系等信息,能幫我們定位對(duì)應(yīng)用性能影響最大的方法。

Call Tree

Call tree 通過(guò)樹(shù)形圖清晰地展現(xiàn)了方法間的層次調(diào)用關(guān)系。同時(shí),JProfiler 將子方法按照它們的執(zhí)行總時(shí)間由大到小排序,這能讓您快速定位關(guān)鍵方法。

使用教程2

對(duì)于 Producer 而言,方法SendProducerBatchTask.run()耗時(shí)最多,繼續(xù)向下查看會(huì)發(fā)現(xiàn)該方法的主要時(shí)間消耗在了執(zhí)行方法Client.PutLogs()上。

Hot Spots

如果您的應(yīng)用方法很多,且很多子方法的執(zhí)行時(shí)間比較接近,使用 hot spots 視圖往往能助您更快地定位問(wèn)題。該視圖能根據(jù)方法的單獨(dú)執(zhí)行時(shí)間、總執(zhí)行時(shí)間、平均執(zhí)行時(shí)間、調(diào)用次數(shù)等屬性對(duì)它們排序。其中,單獨(dú)執(zhí)行時(shí)間等于該方法的總執(zhí)行時(shí)間減去所有子方法的總執(zhí)行時(shí)間。

使用教程3

在該視圖下,可以看到Client.PutLogs(),LogGroup.toByteArray(),SamplePerformance$1.run()是單獨(dú)執(zhí)行時(shí)間耗時(shí)最多的三個(gè)方法。

Call Graph

找到了關(guān)鍵方法后,call graph 視圖能為您呈現(xiàn)與該方法直接關(guān)聯(lián)的所有方法。這有助于我們對(duì)癥下藥,制定合適的性能優(yōu)化策略。

使用教程4

這里,我們觀察到方法Client.PutLogs()執(zhí)行的主要時(shí)間花費(fèi)在了對(duì)象序列化上,因此性能優(yōu)化的關(guān)鍵是提供執(zhí)行效率更高的序列化方法。

Live memory

Live memory 下的各個(gè)子視圖能讓您掌握內(nèi)存的具體分配和使用情況,助您判斷是否存在內(nèi)存泄漏問(wèn)題。

All Objects

All Objects 視圖展示了當(dāng)前堆中各種對(duì)象的數(shù)量和總大小。由圖可知,程序在運(yùn)行過(guò)程中構(gòu)造出了大量 LogContent 對(duì)象。

使用教程5

Allocation Call Tree

Allocation Call Tree 以樹(shù)形圖的形式展示了各方法分配的內(nèi)存大小??梢钥吹?,SamplePerformance$1.run()和SendProducerBatchTask.run()是內(nèi)存分配大戶。

使用教程6

Allocation Hot Spots

如果方法比較多,您還可以通過(guò) Allocation Hot Spots 視圖快速找出分配對(duì)象最多的方法。

使用教程7

Thread History

線程歷史記錄視圖直觀地展示了各線程在不同時(shí)間點(diǎn)的狀態(tài)。

使用教程8

不同線程執(zhí)行的任務(wù)不同,所展現(xiàn)的狀態(tài)特征也不同。

線程pool-1-thread-會(huì)循環(huán)調(diào)用producer.send()方法異步發(fā)送數(shù)據(jù),它們?cè)诔绦騽倖?dòng)時(shí)一直處于運(yùn)行狀態(tài),但隨后在大部分時(shí)間里處于阻塞狀態(tài)。這是因?yàn)?producer 發(fā)送數(shù)據(jù)的速率低于數(shù)據(jù)的產(chǎn)生速率,且單個(gè) producer 實(shí)例能緩存的數(shù)據(jù)大小有限。在程序運(yùn)行初始,producer 有足夠空間緩存待發(fā)送數(shù)據(jù),所以pool-1-thread-一直處于運(yùn)行狀態(tài),這也就解釋了為何程序在剛啟動(dòng)時(shí) CPU 使用率較高。隨著時(shí)間的推移,producer 的緩存被逐漸耗盡,pool-1-thread-必須等到 producer “釋放”出足夠的空間才有機(jī)會(huì)繼續(xù)運(yùn)行,這也是為什么我們會(huì)觀察到大量線程處于阻塞狀態(tài)。

aliyun-log-producer-0-mover負(fù)責(zé)將超時(shí) batch 投遞到發(fā)送線程池中。由于發(fā)送速率較快,batch 會(huì)因緩存的數(shù)據(jù)達(dá)到了上限被pool-1-thread-直接投遞到發(fā)送線程池中,因此 mover 線程在大部分時(shí)間里都處于等待狀態(tài)。

aliyun-log-producer-0-io-thread-作為真正執(zhí)行數(shù)據(jù)發(fā)送任務(wù)的線程有一部分時(shí)間花在了網(wǎng)絡(luò) I/O 狀態(tài)。

aliyun-log-producer-0-success-batch-handler用于處理發(fā)送成功的 batch。由于回調(diào)函數(shù)比較簡(jiǎn)單,執(zhí)行時(shí)間短,它在大部分時(shí)間里都處于等待狀態(tài)。

aliyun-log-producer-0-failure-batch-handler用于處理發(fā)送失敗的 batch。由于沒(méi)有數(shù)據(jù)發(fā)送失敗,它一直處于等待狀態(tài)。

通過(guò)上述分析可知,這些線程的狀態(tài)特征都是符合預(yù)期的。

Overhead Hot Spots Detected

當(dāng)程序運(yùn)行結(jié)束后,JProfiler 會(huì)彈出一個(gè)對(duì)話框展示那些頻繁被調(diào)用,但執(zhí)行時(shí)間又很短的方法。在下次診斷時(shí),您可以讓 JProfiler agent 在分析過(guò)程中忽略掉這些方法以減輕對(duì)應(yīng)用性能的影響。

使用教程9

用戶評(píng)論
所有評(píng)論(5)
昵稱(chēng):
(您的評(píng)論需要經(jīng)過(guò)審核才能顯示)
精選留言 來(lái)自江西萍鄉(xiāng)聯(lián)通用戶 發(fā)表于: 2023-10-13
我已經(jīng)安裝了,用起來(lái)感覺(jué)不錯(cuò),感謝分享!
精選留言 來(lái)自廣西來(lái)賓移動(dòng)用戶 發(fā)表于: 2023-3-4
真的假的,還是免費(fèi)軟件,用過(guò)的朋友冒個(gè)泡哈
精選留言 來(lái)自廣東汕頭移動(dòng)用戶 發(fā)表于: 2023-4-7
非常感謝,我剛好用的上這款軟件
精選留言 來(lái)自河南漯河聯(lián)通用戶 發(fā)表于: 2023-3-1
自從發(fā)現(xiàn)他以后,一直在用他下載,很不錯(cuò)
精選留言 來(lái)自甘肅武威聯(lián)通用戶 發(fā)表于: 2023-12-16
及時(shí)雨來(lái)了,感謝

軟件投訴或糾錯(cuò)

問(wèn)題:
說(shuō)明:
郵箱: