在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在開發環境中快速定位 Java 應用程序的性能瓶頸

jf_ro2CN3Fa ? 來源:芋道源碼 ? 2023-06-19 09:43 ? 次閱讀

背景

使用場景

特性

監控指標

快速啟動

開源地址

77de59b6-0e41-11ee-962d-dac502259ad0.jpg

背景

隨著所在公司的發展,應用服務的規模不斷擴大,原有的垂直應用架構已無法滿足產品的發展,幾十個工程師在一個項目里并行開發不同的功能,開發效率不斷降低。

于是公司開始全面推進服務化進程,把團隊內的大部分工程師主要精力全部都集中到服務化中。服務化可以讓每個工程師僅在自己負責的子項目中進行開發,提高了開發的效率,但是服務化同時也帶來了其他問題:

無法知道每個服務的運行情況,例如,某一臺服務它目前的 QPS 是多少?它的平均延遲是多少,99% 的延遲是多少,99.9% 的延遲又是多少?

某一個接口響應時間慢,如何定位是哪個方法引起的?

每個服務的負載是否均衡?

當服務出現抖動時,如何判斷是 DB、Cache 還是下游服務引起的?

DB 和 Cache 響應延遲是多少?

如何評估服務的容量,隨著服務的調用量越來越大,這個服務需要多少機器來支撐?什么時候應該加機器?

針對以上開發中的煩惱,今天我們介紹一個針對高并發、低延遲應用設計的高性能 Java 性能監控和統計工具——MyPerf4J

基于 Spring Boot + MyBatis Plus + Vue & Element 實現的后臺管理系統 + 用戶小程序,支持 RBAC 動態權限、多租戶、數據權限、工作流、三方登錄、支付、短信、商城等功能

項目地址:https://github.com/YunaiV/ruoyi-vue-pro

視頻教程:https://doc.iocoder.cn/video/

使用場景

在開發環境中快速定位 Java 應用程序的性能瓶頸

在生產環境中長期監控 Java 應用程序的性能指標

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實現的后臺管理系統 + 用戶小程序,支持 RBAC 動態權限、多租戶、數據權限、工作流、三方登錄、支付、短信、商城等功能

項目地址:https://github.com/YunaiV/yudao-cloud

視頻教程:https://doc.iocoder.cn/video/

特性

高性能: 單線程支持每秒 1000萬次 響應時間的記錄,每次記錄只花費 73納秒

無侵入: 采用 JavaAgent 方式,對應用程序完全無侵入,無需修改應用代碼

低內存: 采用內存復用的方式,整個生命周期只產生極少的臨時對象,不影響應用程序的GC

高精度: 采用納秒來計算響應時間

高實時: 支持秒級監控,最低 1 秒!

監控指標

MyPerf4J 為每個應用收集數十個監控指標,所有的監控指標都是實時采集和展現的。

下面是 MyPerf4J 目前支持的監控指標列表:

Method

RPS,Count,Avg,Min,Max,StdDev,TP50, TP90, TP95, TP99, TP999, TP9999, TP99999, TP100

77e933d6-0e41-11ee-962d-dac502259ad0.gif

Memory

HeapInit,HeapUsed,HeapCommitted,HeapMax,NonHeapInit,NonHeapUsed,NonHeapCommitted,NonHeapMax

784f2966-0e41-11ee-962d-dac502259ad0.gif

JVM GC

CollectCount,CollectTime

788c7550-0e41-11ee-962d-dac502259ad0.gif

JVM Class

Total,Loaded,Unloaded

78985b5e-0e41-11ee-962d-dac502259ad0.gif

快速啟動

MyPerf4J 采用 JavaAgent 配置方式,透明化接入應用,對應用代碼完全沒有侵入。

下載

下載并解壓 MyPerf4J-ASM.zip

閱讀解壓出的 README 文件

修改解壓出的 MyPerf4J.properties 配置文件中 app_name、metrics.log.xxx 和 filter.packages.include 的配置值

MyPerf4J-ASM.zip包 :https://github.com/LinShunKang/Objects/blob/master/zips/CN/MyPerf4J-ASM-3.3.0-SNAPSHOT.zip?raw=true

配置

在 JVM 啟動參數里加上以下兩個參數

-javaagent:/path/to/MyPerf4J-ASM.jar
-DMyPerf4JPropFile=/path/to/MyPerf4J.properties
78a5ed6e-0e41-11ee-962d-dac502259ad0.png

運行

啟動應用,監控日志輸出到 /path/to/log/method_metrics.log:

MyPerf4JMethodMetrics[2020-01-0112:49:57,2020-01-0112:49:58]
Method[6]TypeLevelTimePercentRPSAvg(ms)Min(ms)Max(ms)StdDevCountTP50TP90TP95TP99TP999TP9999
DemoServiceImpl.getId2(long)GeneralService322.50%65240.49010.506524011111
DemoServiceImpl.getId3(long)GeneralService296.10%43500.68010.474350111111
DemoServiceImpl.getId4(long)GeneralService164.60%21760.76010.432176111111
DemoServiceImpl.getId1(long)GeneralService0.00%87040.00000.008704000000
DemoDAO.getId1(long)DynamicProxyDAO0.00%21760.00000.002176000000
DemoDAO.getId2()DynamicProxyDAO0.00%21760.00000.002176000000

卸載

在 JVM 啟動參數中去掉以下兩個參數,重啟即可卸載此工具。

-javaagent:/path/to/MyPerf4J-ASM.jar
-DMyPerf4JPropFile=/path/to/MyPerf4J.properties

責任編輯:彭菁

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    20

    文章

    2986

    瀏覽量

    107116
  • 開發
    +關注

    關注

    0

    文章

    373

    瀏覽量

    41383
  • 應用程序
    +關注

    關注

    38

    文章

    3322

    瀏覽量

    58787

原文標題:高性能、無侵入的 Java 性能監控神器

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    Java開發環境概述

    Eclipse、JBuilder。本書各章示例基本Eclipse下開發。JDK雖然無可視化集成編程環境,但是對開發基礎性、通用性軟件有其獨到的優勢。對于編程初學者,開始
    發表于 12-06 00:18

    英創主板JAVA應用開發簡介

    ,即可通過英創提供的java類,訪問硬件接口。為了讓用戶能夠快速熟悉英創主板上的Java程序開發,英創提供了完整的
    發表于 10-20 13:13

    使用Eclipse WTP開發Java Web應用程序

    使用Eclipse WTP開發Java Web應用程序時,我們需要在計算機安裝tomcat才能執行該應用程序。如果在項目上使用Maven,
    發表于 12-16 07:00

    如何在嵌入式容器Jetty或Tomcat運行帶有Maven的Java Web應用程序

    開發Java Web應用程序時,從“真實”環境獲得快速
    發表于 12-16 06:24

    Java程序設計基礎

    Java程序設計基礎 一、實驗目的:      通過編制一個完整的應用程序,使得學生對Java應用程序
    發表于 12-05 23:53 ?1612次閱讀

    快速識別應用程序性能瓶頸

    RATIONAL QUANTIFY FOR WINDOWS能查明應用程序性能瓶頸,從而確保使用JAVA、VISUAL C/C++和VISUAL BASIC
    發表于 04-18 22:15 ?20次下載

    理解Java字符流與字節流的區別

    JDK稱為Java開發包或Java開發工具,是一個編寫Java的Applet小程序
    發表于 12-04 10:39 ?1156次閱讀
    理解<b class='flag-5'>Java</b><b class='flag-5'>中</b>字符流與字節流的區別

    Java開發環境配置(win7_64bit)

    搭建Java開發環境一般需要同時安裝JDK和JRE。 JDK:指Java開發工具包Java
    的頭像 發表于 02-01 15:03 ?3426次閱讀
    <b class='flag-5'>Java</b><b class='flag-5'>開發</b><b class='flag-5'>環境</b>配置(win7_64bit)

    如何用Java代碼來創建iOS和Android應用程序

    了解Multi-OS Engine(beta)如何幫助Java開發人員快速創建iOS和Android應用程序
    的頭像 發表于 11-08 06:42 ?4424次閱讀

    Java多線程應用程序的數據存儲庫使用改進

    當執行的查詢數量很大時,數據存儲庫通常是高要求系統的瓶頸。延遲批處理執行器(DelayedBatchExecutor)是一個組件,可通過Java多線程應用程序
    的頭像 發表于 05-05 20:46 ?2076次閱讀
    <b class='flag-5'>Java</b>多線程<b class='flag-5'>應用程序</b>的數據存儲庫使用改進

    最新的Java環境包JavaSetup8u281應用程序免費下載

    最新的Java環境包JavaSetup8u281應用程序免費下載
    發表于 01-26 08:00 ?28次下載
    最新的<b class='flag-5'>Java</b><b class='flag-5'>環境</b>包JavaSetup8u281<b class='flag-5'>應用程序</b>免費下載

    LabVIEW應用程序性能瓶頸的解決

    了解如何識別和解決LabVIEW應用程序性能瓶頸。使用內置工具和VI分析器,您可以監視VIs的內存使用情況和執行時間,以確定導致應用程序性能
    發表于 03-29 14:03 ?8次下載
    LabVIEW<b class='flag-5'>應用程序</b>中<b class='flag-5'>性能</b><b class='flag-5'>瓶頸</b>的解決

    開發java應用程序的基本步驟是

    ava是一種面向對象的編程語言,廣泛用于開發各種類型的應用程序開發Java應用程序時,有一些
    的頭像 發表于 11-28 16:52 ?2174次閱讀

    java環境配置成功后能執行哪些操作

    。 使用Java開發工具包(JDK):Java環境配置成功后,您可以使用Java開發工具包(JD
    的頭像 發表于 12-06 15:55 ?1062次閱讀

    華納云:java web和java有什么區別java web和java有什么區別

    的平臺,Java可以用于開發桌面應用程序、移動應用程序、企業級應用程序等。 – Java Web
    的頭像 發表于 07-16 13:35 ?1385次閱讀
    華納云:<b class='flag-5'>java</b> web和<b class='flag-5'>java</b>有什么區別<b class='flag-5'>java</b> web和<b class='flag-5'>java</b>有什么區別
    主站蜘蛛池模板: 亚洲第二页 | 天堂看动漫 | 色播亚洲 | 在线播放91灌醉迷j高跟美女 | 特黄视频 | 国产黄色在线网站 | 高h文男主又粗又狠 | 午夜剧场操一操 | 欧美高清一区二区三 | 亚洲日本三级 | 在线天堂资源www中文在线 | 欧美色人阁 | 亚洲欧美日韩在线观看你懂的 | 神马影院午夜dy888 | 久久精品视频免费播放 | 欧美极品在线播放 | 午夜dy888理论 | 国产成人综合自拍 | 久久精品男人影院 | 失禁h啪肉尿出来高h | 午夜爱爱小视频 | 三级在线观看视频网站 | 久久天天丁香婷婷中文字幕 | 婷婷色六月 | 色你懂的| 人人人人干 | 天天色天天射综合网 | 午夜影院免费版 | 曰本性l交片视频视频 | 在线观看www妖精免费福利视频 | 老司机51精品视频在线观看 | 久久综合久久88 | 人人射人人爽 | www.xxx日本人| 日本丝瓜着色视频 | 亚洲第一色视频 | 牛牛a级毛片在线播放 | 97影院午夜午夜伦不卡 | 男女爱爱福利 | 中文字幕婷婷 | 精品视频一区二区三区四区五区 |