使用jstack排查CPU飆升的問題記錄

? ? ? ? 最近,看到短視頻傳播了一個使用jstack來協助排查CPU飆升的案例。我也是比較感興趣,參考了視頻博主的流程,自己做了下對應案例的實戰演練,在此,想做一下,針對相關問題模擬與排查演練的實戰過程記錄。

? ? ? ? 案例中所使用的DEMO代碼,我已經放到了以下的代碼倉庫中,有需要的同學,可以自行下載與學習演練。代碼倉庫地址:https://github.com/AlickLiubc/cpu-problems-demo

? ? ? ? 在演練代碼中,主要通過一段死循環,來模擬了系統CPU飆升的代碼原因。

具體步驟:

步驟1:

將代碼打成jar包并放置在Linux的系統運行環境中運行:

mvn clean package -DskipTests
nohup java -jar cpu-problems-demo-1.0-SNAPSHOT.jar > /dev/null 2> /dev/null &

步驟2:

通過瀏覽器打開與觀察接口的問題現象,如下圖所示,瀏覽器處于不斷加載的過程中:

步驟3:

使用top命令,查看占用CPU比較高的進程ID(十進制),可以看到PID=16013的進程占用CPU很高。

top

步驟4:

進一步使用top命令查詢占用CPU比較高的線程ID

top -H -p 16013

此時,可以得到占用CPU很高的線程ID(十進制),PID=16029。

步驟5:

將步驟4中得到的十進制的線程ID轉換為十六進制值為0x3e9d:

printf "0x%x\n" 16029

步驟6:

結合以上步驟中得到的進程ID(十進制)與線程ID(十六進制),可以找到問題源頭的相關代碼信息:

jstack 16013 | grep 0x3e9d-A 20

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/85734.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/85734.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/85734.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Sql Server 中常用語句

1.創建用戶數據庫 --創建數據庫 use master --切換到master數據庫 go-- 終止所有與SaleManagerDB數據庫的連接 alter database SaleManagerDB set single_user with rollback immediate goif exists (select * from sysdatabases where nameSaleManagerDB) drop database Sal…

聯通專線賦能,億林網絡裸金屬服務器:中小企業 IT 架構升級優選方案

在當今數字化飛速發展的時代,中小企業面臨著日益增長的業務需求與復雜多變的市場競爭環境。如何構建高效、穩定且具性價比的 IT 架構,成為眾多企業突破發展瓶頸的關鍵所在。而億林網絡推出的 24 核 32G 裸金屬服務器,搭配聯通專線的千兆共享帶…

LangChain核心之Runnable接口底層實現

導讀:作為LangChain框架的核心抽象層,Runnable接口正在重新定義AI應用開發的標準模式。這一統一接口設計將模型調用、數據處理和API集成等功能封裝為可復用的邏輯單元,通過簡潔的管道符語法實現復雜任務的聲明式編排。 對于面臨AI應用架構選擇…

CSP嚴格模式返回不存在的爬蟲相關文件

文章目錄 說明示例(返回404)示例(創建CSP例外) 說明 日期:2025年6月4日。 CSP嚴格模式是default-src none,但有些web應用中,在爬蟲相關文件不存在的情況下,依舊返回了對應文件&…

DeviceNET從站轉EtherNET/IP主站在鹽化工行業的創新應用

在工業自動化飛速發展的今天,鹽化工行業也在積極探索智能化升級的路徑。其中,設備之間的高效通信與協同工作成為了提升生產效率和質量的關鍵。而JH-DVN-EIP疆鴻智能DeviceNET從站轉EtherNET/IP主站的技術應用,為鹽化工行業帶來了全新的解決方…

安裝 Nginx

個人博客地址:安裝 Nginx | 一張假鈔的真實世界 對于 Linux 平臺,Nginx 安裝包 可以從 nginx.org 下載。 Ubuntu: 版本Codename支持平臺12.04precisex86_64, i38614.04trustyx86_64, i386, aarch64/arm6415.10wilyx86_64, i386 在 Debian/Ubuntu 系統…

默認網關 -- 負責轉發數據包到其他網絡的設備(通常是路由器)

? 默認網關概括說明: 默認網關(Default Gateway)是網絡中一臺負責轉發數據包到其他網絡的設備(通常是路由器)。當一臺主機要訪問不在本地子網內的設備時,會將數據包發給默認網關,由它繼續轉發…

cv::FileStorage用法

cv::FileStorage 是 OpenCV 中的一個類,用于讀取和寫入結構化數據(如 YAML、XML、JSON)。它非常適合保存和加載諸如: 相機內參(K、D) 位姿(R、T) IMU 數據 配置參數 向量、矩陣、…

WebFuture:啟動服務提示Job webfuture.service/start failed with result ‘dependency‘處理辦法

問題分析: 當出現 Job webfuture.service/start failed with result dependency. 這樣的錯誤提示時,通常意味著 webfuture.service 這個服務在啟動時因為依賴關系的問題而未能成功啟動 解決辦法: 原因分析: webfuture.service 可…

Java 大視界 -- Java 大數據機器學習模型在遙感圖像變化檢測中的應用與改進(235)

??親愛的朋友們,熱烈歡迎來到 青云交的博客!能與諸位在此相逢,我倍感榮幸。在這飛速更迭的時代,我們都渴望一方心靈凈土,而 我的博客 正是這樣溫暖的所在。這里為你呈上趣味與實用兼具的知識,也期待你毫無保留地分享獨特見解,愿我們于此攜手成長,共赴新程!?? 全網…

HarmonyOS運動開發:精準估算室內運動的距離、速度與步幅

##鴻蒙核心技術##運動開發##Sensor Service Kit(傳感器服務)# 前言 在室內運動場景中,由于缺乏 GPS 信號,傳統的基于衛星定位的運動數據追蹤方法無法使用。因此,如何準確估算室內運動的距離、速度和步幅,…

商品模塊中的多規格設計:實現方式與電商/ERP系統的架構對比

在商品管理系統中,多規格設計(Multi-Specification Product Design)是一個至關重要但又極具挑戰性的領域。無論是面向消費者的電商系統,還是面向企業管理的ERP系統,對商品規格的處理方式直接影響庫存管理、訂單履約、數…

HTML 等價字符引用:系統化記憶指南

HTML 等價字符引用:系統化記憶指南 在 HTML 中,字符引用(Character Entity References)用于表示保留字符或特殊符號。我將提供一個系統化的方法來記憶這些重要實體,并解釋它們的實際應用。 什么是等價字符引用? HTML 字符引用有兩種形式: 命名實體:&entity_name…

Java 線程池原理詳解

Java 線程池原理詳解 一、引言 在高并發場景下,頻繁地創建與銷毀線程將帶來極大的性能開銷。為了提升資源復用性與程序響應速度,Java 提供了線程池機制(java.util.concurrent 包)。線程池通過復用線程、控制線程數量、任務排隊管…

Mybatis入門到精通

一:什么是Mybatis 二:Mybatis就是簡化jdbc代碼的 三:Mybatis的操作步驟 1:在數據庫中創建一個表,并添加數據 我們這里就省略了 2:Mybatis通過maven來導入坐標(jar包) 3&#xff1a…

化學方程式配平免費API接口教程

接口簡介: 根據反應物和生成物配平化學方程式。 請求地址: https://cn.apihz.cn/api/other/hxfcs.php 請求方式: POST或GET。 請求參數: 【名稱】【參數】【必填】【說明】 【用戶ID】【id】【是】【用戶中心的數字ID&#xff…

Spring學習筆記:Spring的基于注解的XML的詳細配置

按照劉Java的順序,應該是從基于XML的DI開始接著上面的關于IoC容器裝配。主要介紹學習Spring的XML基于注解的詳細配置。 第一步是搭建一個Spring的基礎工程(maven管理),通過IoC機制獲取IoC容器的對象。 創建maven工程并在pom文件…

(四)動手實現多層感知機:深度學習中的非線性建模實戰

1 多層感知機(MLP) 多層感知機(Multilayer Perceptron, MLP)是一種前饋神經網絡,包含一個或多個隱藏層。它能夠學習數據中的非線性關系,廣泛應用于分類和回歸任務。MLP的每個神經元對輸入信號進行加權求和…

第十三篇:MySQL 運維自動化與可觀測性建設實踐指南

本篇重點介紹 MySQL 運維自動化的關鍵工具與流程,深入實踐如何構建高效可觀測體系,實現數據庫系統的持續穩定運行與故障快速響應。 一、為什么需要 MySQL 運維自動化與可觀測性? 運維挑戰: 手動備份容易遺漏或失敗; …

蜜獾算法(HBA,Honey Badger Algorithm)

2021年由Hashim等人提出(論文:Honey Badger Algorithm: A New Metaheuristic Algorithm for Solving Optimization Problems)。模擬蜜獾在自然界中的智能捕食行為,屬于群體智能優化算法(與粒子群PSO、遺傳算法GA同屬一…