最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java應(yīng)用cpu飆升(超過100%)故障排查步驟

 更新時(shí)間:2023年06月26日 11:26:59   作者:java路飛  
在Java并發(fā)編程計(jì)算密集型要進(jìn)行大量的計(jì)算、邏輯判斷等操作,消耗CPU資源,比如計(jì)算圓周率、對(duì)視頻進(jìn)行高清解碼等等,下面這篇文章主要給大家介紹了關(guān)于java應(yīng)用cpu飆升(超過100%)故障排查步驟的相關(guān)資料,需要的朋友可以參考下

前言

害。。。

昨天剛寫完一份關(guān)于jvm問題排查相關(guān)的博客,今天線上項(xiàng)目就遇到了一個(gè)突發(fā)問題。

現(xiàn)象是用戶反映系統(tǒng)非常卡,無法操作。

然后登錄服務(wù)器查看發(fā)現(xiàn)cpu 一直100%以上。

具體排查步驟:

1,首先top命令查看服務(wù)器cpu等情況:

發(fā)現(xiàn)線上pid 29737的 java應(yīng)用cpu達(dá)到100%

2,top -H -p pid命令查看具體的線程情況

top -H -p 29373

輸入上述命令,然后按H顯示cpu最高排名的線程。可以看到pid 30013的線程cpu 100%且一直未釋放。

3.將線程的pid轉(zhuǎn)為16進(jìn)制

printf "%x\n" 30013

30013做16進(jìn)制轉(zhuǎn)換為753d

4.使用jvm工具jstack打印該進(jìn)程的堆棧信息

使用該命令打印堆棧信息的后50行

jstack 29737 |grep -A 50 753d 

然后就可以具體看到具體的出問題的是哪部分代碼了,然后檢查更改即可。(我們的是代碼中出現(xiàn)死循環(huán))

注意問題:

可能會(huì)出現(xiàn)以下報(bào)錯(cuò):

xxxx: Unable to open socket file: target process not responding or HotSpot VM not loaded

The -F option can be used when the target process is not responding

有兩個(gè)可能:

1.jstack后面的進(jìn)程pid不對(duì),或者16進(jìn)制的數(shù)不對(duì)。

需要注意jstack后面是jps的java進(jìn)程id。

2.執(zhí)行該命令的用戶必須和java應(yīng)用所屬的用戶一致。

常見的cpu飆升原因

程序中存在死循環(huán)或者長(zhǎng)時(shí)間占用 CPU 的操作。比如,不合理的遞歸操作、循環(huán)操作等等。

程序中存在大量的計(jì)算操作,例如復(fù)雜的算法、大量的數(shù)值計(jì)算等等。

程序中存在大量的 IO 操作,例如讀寫文件、網(wǎng)絡(luò)通信等等。

程序中存在大量的線程創(chuàng)建和銷毀操作,以及線程間的競(jìng)爭(zhēng)和同步操作。

程序中存在內(nèi)存泄漏或者內(nèi)存溢出,導(dǎo)致 JVM 不斷進(jìn)行垃圾回收。

程序中存在大量的數(shù)據(jù)庫操作,導(dǎo)致數(shù)據(jù)庫連接池的耗盡和數(shù)據(jù)庫負(fù)載過高。

針對(duì)這些問題,需要具體情況具體分析,采取相應(yīng)的優(yōu)化措施,例如修改代碼邏輯、優(yōu)化算法、降低 IO 操作頻率、減少線程創(chuàng)建和銷毀、增加 JVM 內(nèi)存等等。

總結(jié)

到此這篇關(guān)于java應(yīng)用cpu飆升(超過100%)故障排查步驟的文章就介紹到這了,更多相關(guān)java應(yīng)用cpu飆升故障內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring?Bean注冊(cè)與注入實(shí)現(xiàn)方法詳解

    Spring?Bean注冊(cè)與注入實(shí)現(xiàn)方法詳解

    首先,要學(xué)習(xí)Spring中的Bean的注入方式,就要先了解什么是依賴注入。依賴注入是指:讓調(diào)用類對(duì)某一接口的實(shí)現(xiàn)類的實(shí)現(xiàn)類的依賴關(guān)系由第三方注入,以此來消除調(diào)用類對(duì)某一接口實(shí)現(xiàn)類的依賴。Spring容器中支持的依賴注入方式主要有屬性注入、構(gòu)造函數(shù)注入、工廠方法注入
    2022-10-10
  • 剖析SpringCloud Feign中所隱藏的坑

    剖析SpringCloud Feign中所隱藏的坑

    這篇文章主要為大家介紹了剖析SpringCloud Feign中所隱藏的坑示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 深入理解Java設(shè)計(jì)模式之備忘錄模式

    深入理解Java設(shè)計(jì)模式之備忘錄模式

    這篇文章主要介紹了JAVA設(shè)計(jì)模式之備忘錄模式的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解
    2021-11-11
  • Java web入門指南之在Idea上創(chuàng)建Java web項(xiàng)目

    Java web入門指南之在Idea上創(chuàng)建Java web項(xiàng)目

    好多書上的JavaWeb教程都是Eclipse以及MyEclipse,當(dāng)然這里不論IDE的好壞,下面這篇文章主要給大家介紹了關(guān)于Java web入門指南之在Idea上創(chuàng)建Java web項(xiàng)目的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • 一文詳解Java中主流的代碼審計(jì)與漏洞檢測(cè)工具使用

    一文詳解Java中主流的代碼審計(jì)與漏洞檢測(cè)工具使用

    在軟件開發(fā)中,代碼審計(jì)和漏洞檢測(cè)是至關(guān)重要的步驟,本文將詳細(xì)介紹幾種主流的Java代碼審計(jì)與漏洞檢測(cè)工具,包括SonarQube、FindBugs、Checkmarx和SpotBugs,及其使用方法,感興趣的小伙伴可以了解下
    2026-04-04
  • Springboot獲取bean實(shí)例之SpringContextUtil詳解

    Springboot獲取bean實(shí)例之SpringContextUtil詳解

    這篇文章主要介紹了Springboot獲取bean實(shí)例之SpringContextUtil使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Java正則替換手機(jī)號(hào)代碼實(shí)例

    Java正則替換手機(jī)號(hào)代碼實(shí)例

    本文的主要內(nèi)容是Java語言中正則表達(dá)式替換手機(jī)號(hào)的第4到第7位,實(shí)現(xiàn)方法十分簡(jiǎn)單,同時(shí)涉及了一些正則表達(dá)式的相關(guān)用法,需要的朋友可以參考下。
    2017-09-09
  • javaweb servlet生成簡(jiǎn)單驗(yàn)證碼

    javaweb servlet生成簡(jiǎn)單驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了javaweb servlet生成簡(jiǎn)單驗(yàn)證碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Spring 中優(yōu)雅的獲取泛型信息的方法

    Spring 中優(yōu)雅的獲取泛型信息的方法

    這篇文章主要介紹了Spring 中優(yōu)雅的獲取泛型信息的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 詳解SpringBoot2.0的@Cacheable(Redis)緩存失效時(shí)間解決方案

    詳解SpringBoot2.0的@Cacheable(Redis)緩存失效時(shí)間解決方案

    這篇文章主要介紹了詳解SpringBoot2.0的@Cacheable(Redis)緩存失效時(shí)間解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評(píng)論

民乐县| 拉萨市| 昭觉县| 德安县| 阿坝| 大安市| 成都市| 台南市| 临清市| 扎兰屯市| 个旧市| 五家渠市| 平江县| 和龙市| 涪陵区| 枣强县| 交口县| 宿松县| 景洪市| 犍为县| 龙陵县| 武定县| 洱源县| 新龙县| 蒙自县| 阳春市| 海晏县| 河津市| 望都县| 库尔勒市| 临沧市| 通城县| 兰溪市| 阳曲县| 静宁县| 唐河县| 宜兴市| 临沧市| 长兴县| 叶城县| 嘉善县|