<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Java 性能優(yōu)化的 9 個(gè)工具,你知道幾個(gè)?

          共 2957字,需瀏覽 6分鐘

           ·

          2021-10-11 21:24

          關(guān)注Java核心技術(shù),推送更多 Java 干貨!c31a764de12e5b23ca76e039de5fdcd9.webp

          之前我寫過(guò)一篇關(guān)于5個(gè)工具幫助寫出更好的Java代碼的文章。合適的工具可以改進(jìn)我們的代碼,并且提高開發(fā)效率。在IDR解決方案中,我們一直在找一些方法來(lái)改進(jìn)我們的代碼。

          但最近,我們?cè)诳紤]改進(jìn)PDF HTML5轉(zhuǎn)換器和Java PDF類庫(kù)代碼時(shí),發(fā)現(xiàn)最近我們的關(guān)注點(diǎn)已經(jīng)開始轉(zhuǎn)換到如何提升Java性能。

          在這篇文章中,我會(huì)帶著大家一起看一下9個(gè)可以幫助我們優(yōu)化Java性能的工具。有一些我們已經(jīng)在IDR Solutions中使用了,而另外一些有可能在個(gè)人項(xiàng)目中使用。

          1、NetBeans Profiler

          7a26f517fd5c64d8874dd65a349197db.webp

          NetBeans profiler是一個(gè)NetBeans IDE插件,主要為NetBeans IDE提供性能分析相關(guān)的功。NetBeans IDE是一個(gè)開源的集成開發(fā)環(huán)境。它很好地支持所有Java應(yīng)用類型(包括Java SE、JavaFX、Java ME、Web、EJB和移動(dòng)應(yīng)用)的開發(fā)。

          這個(gè)性能分析器包含了諸如CPU、內(nèi)存和線程性能分析功能,并且提供了一些用于基本JVM監(jiān)控的附加工具和功能。對(duì)于需要解決內(nèi)存和性能相關(guān)問(wèn)題的開發(fā)者非常有用。

          2、JProfiler

          3c5136df5ce2a2ac6e04f2595a0abe15.webp

          JProfiler 在我之前的文章中有提及。同樣,它也是一個(gè)很好的Java性能分析工具。JProfiler集CPU、內(nèi)存和線程性能分析于一體,可以用于分析性能瓶頸、內(nèi)存泄漏、CPU負(fù)載和解決線程相關(guān)的問(wèn)題,并且支持本地性能分析(分析與JProfiler軟件安裝在同一臺(tái)機(jī)的應(yīng)用)和遠(yuǎn)程性能分析(它可以分析遠(yuǎn)程沒(méi)有安裝JProfiler機(jī)器上的應(yīng)用),這一點(diǎn)對(duì)開發(fā)人員非常有用。

          JProfiler由ej-technologies GmbH開發(fā)的商業(yè)授權(quán)的Java性能分析工具,主要為Java EE和Java SE應(yīng)用所設(shè)計(jì)。

          3、GC Viewer

          517966b63e883e04e79249817fbcee43.webp

          GC Viewer可以(從主頁(yè)和Github)免費(fèi)獲取。GC Viewer是一個(gè)開源工具,可以對(duì)vmflags -verboase:gc和-Xloggc:等Java VM選項(xiàng)產(chǎn)生的數(shù)據(jù)進(jìn)行可視化分析。GC Viewer可以用于計(jì)算GC(垃圾回收)相關(guān)的性能數(shù)據(jù)記錄,包括吞吐、累積暫停、最長(zhǎng)時(shí)間的暫停等等。當(dāng)你想要通過(guò)改變生成大小和設(shè)置初始堆大小來(lái)調(diào)整某個(gè)特定應(yīng)用的GC時(shí),它尤其有用。

          分享資料:最新 Java 面試題出爐!

          GC Viewer是一個(gè)開源工具,由Tagtraum Industries Incorporated開發(fā)。這是一個(gè)很小的初創(chuàng)軟件咨詢公司,位于羅利、北卡羅萊納州,由成立于1999年的非盈利項(xiàng)目Tagtraum Industries在2004年創(chuàng)立。

          4、VisualVM

          0b97ceeb198adbca33a9ad65648ee125.webp

          VisualVM 是一個(gè)由NetBeans平臺(tái)派生的工具,遵循模塊化的架構(gòu)思想。這意味著可以通過(guò)插件方便的進(jìn)行擴(kuò)展。

          Visual VM允許你獲取Java程序的詳細(xì)信息,只要它在一個(gè)Java虛擬機(jī)(JVM)上運(yùn)行即可。生成的數(shù)據(jù)可以由JDK工具生成和讀取,多個(gè)Java程序的所有數(shù)據(jù)和信息都可以很方便地進(jìn)行查看,包括本地和遠(yuǎn)程的運(yùn)行程序。同時(shí)可以保存JVM軟件的數(shù)據(jù)快照,把數(shù)據(jù)保存在本地,方便以后進(jìn)行查看或者和其他人一起分享。

          Visual VM可以進(jìn)行CPU性能分析、內(nèi)存性能分析,進(jìn)行GC(譯者注:可以進(jìn)行強(qiáng)制調(diào)用GC)、保存快照等。

          5、Patty Beta

          6155b28163f22dcc6e8db4e5f8df60ad.webp

          “Patty” 項(xiàng)目 是一個(gè)開源項(xiàng)目,可以從Source Forge下載。它致力于為Java 1.5.0和更高版本的虛擬機(jī)提供性能分析工具。與其他性能分析工具不同之處在于,它專注性能分析,并且允許用戶在運(yùn)行時(shí)開啟和關(guān)閉性能分析功能。

          目前Patty正處于beta版階段,但隨著更多強(qiáng)大的功能如方法執(zhí)行、代碼覆蓋、線程競(jìng)爭(zhēng)(Thread Contention)分析的加入,Patty可以用于(內(nèi)存、CPU等)性能調(diào)優(yōu),并且可以將信息通過(guò)TCP/IP Socket發(fā)送到其他電腦上。Patty有著易用的GUI,可以用于分析堆。還可以在Java編譯流程中的準(zhǔn)備階段,對(duì)應(yīng)用程序運(yùn)行時(shí)對(duì)class進(jìn)行監(jiān)測(cè)(instrument)和取消監(jiān)測(cè)(de-instrument)。

          6、JRockit——任務(wù)管理

          3af93194e608f207dd6948737e100deb.webp

          JRockit 是一個(gè)原由Appeal Virtual Machines開發(fā)的專有Java虛擬機(jī)。2002年由BEA Systems收購(gòu),之后從Sum Microsystems處轉(zhuǎn)到Oracle。

          Oracle的JRockit是一套完整的Java SE解決方案,包含了一個(gè)高性能JVM、性能分析、監(jiān)控和排錯(cuò)工具。可用于預(yù)測(cè)Java程序中的延遲。

          最新面試題整理好了,點(diǎn)擊Java面試庫(kù)小程序在線刷題。

          現(xiàn)在,JRockit打包有一系列的稱為JRockit任務(wù)控制(JRockit Mission Control)的工具。這些工具包括:一個(gè)用于管理的控制臺(tái)(console,譯者注:此console跟終端不一樣,是特指管理后臺(tái)系統(tǒng)),進(jìn)行GC數(shù)據(jù)可視化和其他的一些性能統(tǒng)計(jì)。它同樣可以作為運(yùn)行時(shí)性能分析工具Runtime Analyzer來(lái)使用,也可以分析內(nèi)存問(wèn)題。

          關(guān)注Java核心技術(shù),推送更多 Java 干貨!c31a764de12e5b23ca76e039de5fdcd9.webp

          7、Eclipse Memory Analyzer

          1db0993b1a75bbba9f1ea39c116ad837.webp

          Memory Analyzer (MAT) 可以在Eclipse IDE中找到

          Eclipse內(nèi)存分析器(Eclipse Memory Analyzer)是一個(gè)可以幫助你找到內(nèi)存泄漏和減少內(nèi)存損耗的Java堆分析器。它更適合作為一個(gè)分析Java堆棧和計(jì)算大小的工具集,也可以用于監(jiān)測(cè)內(nèi)存泄漏和反模式帶來(lái)的內(nèi)存損耗。

          8、Java Interactive Profiler

          89625b0a2f5a97ef1567cb3e2a2c5f4c.webp

          JIP是一個(gè)用Java開發(fā)的高性能、低損耗性能分析器。基于BSD許可協(xié)議發(fā)布,可以從Source Forge下載。使用JIP的開發(fā)者可以在VM運(yùn)行時(shí)開啟和關(guān)閉性能分析,并且可以過(guò)濾類和包、控制輸出。

          9、Profiler4J

          f403a95a004a74e930a3fabe8e81ad13.webp

          Profiler4j 是一個(gè)專注于CPU性能分析的工具。它具有友好的用戶界面,支持遠(yuǎn)程性能分析,并且支持動(dòng)態(tài)修改配置。

          Profiler4j值得關(guān)注的特性有:基于動(dòng)態(tài)字節(jié)碼增強(qiáng)方式,這就表明它不需要任何本地的庫(kù)和外部可執(zhí)行文件支持。

          更重要的是,它完全由Java編寫,可以提供圖形化的調(diào)用圖形信息、調(diào)用樹結(jié)構(gòu)、內(nèi)存監(jiān)控和類列表,支持細(xì)粒度配置文件。它基于Apache License v2.0協(xié)議發(fā)布,可以從Source Forge上下載。

          來(lái)源:idrsolutions譯者:伯樂(lè)在線 - 陳曉舜鏈接:http://www.importnew.com/12324.html

          最近好文分享1. 最新 Java 面試題出爐!(帶全部答案)

          2. 重磅!Oracle 宣布從 JDK 17 開始正式免費(fèi)。。3. Java 調(diào)用第三方接口,實(shí)戰(zhàn)來(lái)了!4. 用好這個(gè)IDEA插件,寫代碼效率至少提升5倍!

          5. 手寫一個(gè)迷你版 HashMap,面試隨便問(wèn)!

          更多請(qǐng)關(guān)注???Java核心技術(shù)

          一個(gè)分享Java核心技術(shù)干貨的公眾號(hào)

          點(diǎn)擊閱讀原文獲取面試題~
          瀏覽 63
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  超碰色| 少妇骚逼 | xxxxx国产 | 亚洲视频在线视频播放 | 成人开心网 |