当前位置:网站首页>[help] troubleshooting of JVM's high CPU resource consumption
[help] troubleshooting of JVM's high CPU resource consumption
2022-06-27 19:56:00 【The Nuggets said】
JVM Of CPU The investigation of the problem of excessive resource occupation
jstack Command format :
jstack [ option ] pid
Parameter description :
-F jstack [-l] pid When unable to respond , Force print stack
-l l A long list of . Print additional information about the lock , For example, belong to java.util.concurrent Of ownable synchronizers list .
-m Mixed mode output ( Include java And local c/c++ fragment ) Stack .
pid: java The process number of the application
Arguments are mutually exclusive , Cannot be used in combination .
jstack Generated Thread Dump Log structure analysis
jstack -l 25440 > c:/25440.stack
2021-02-01 10:14:10
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.231-b11 mixed mode):
"MySQL Statement Cancellation Timer" #513 daemon prio=5 os_prio=0 tid=0x0000000020de0800 nid=0x2e74 in Object.wait() [0x0000000069e0f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:502)
at java.util.TimerThread.mainLoop(Timer.java:526)
- locked <0x00000006e18d6598> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:505)
Locked ownable synchronizers:
- None
"Druid-ConnectionPool-Destroy-968174377" #459 daemon prio=5 os_prio=0 tid=0x0000000020de0000 nid=0x32e8 waiting on condition [0x000000006311f000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.alibaba.druid.pool.DruidDataSource$DestroyConnectionThread.run(DruidDataSource.java:2824)
Locked ownable synchronizers:
- None
"Druid-ConnectionPool-Create-968174377" #458 daemon prio=5 os_prio=0 tid=0x0000000020dd9000 nid=0x16e4 waiting on condition [0x000000006301f000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000006c3ee6cd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2728)
Locked ownable synchronizers:
- None
jstack -F PID > c:/jstack.25440.txt Inquire about IN_VM Check the methods for finding related classes
Attaching to process ID 25440, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.231-b11
Deadlock Detection:
No deadlocks found.
Thread 133: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
- java.lang.Object.wait() @bci=2, line=502 (Compiled frame)
- java.util.TimerThread.mainLoop() @bci=28, line=526 (Interpreted frame)
- java.util.TimerThread.run() @bci=1, line=505 (Interpreted frame)
Thread 95: (state = BLOCKED)
- com.****.patrol.util.PatrolHelper.getRuleByTime(com.****patrol..entity.StatRule, java.time.LocalDateTime) @bci=430, line=304 (Compiled frame; information may be imprecise)
- com.****.patrol.util.PatrolHelper.getStatRule(java.util.List, java.time.LocalDateTime) @bci=51, line=226 (Compiled frame)
- com.****.service.impl.InspectServiceImpl.getCalendarData(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.time.LocalDateTime, java.time.LocalDateTime) @bci=252, line=226 (Compiled frame)
- com.****.patrol.controller.InspectController.getCalendarData(java.lang.String, java.lang.String, java.lang.String, java.time.LocalDateTime, java.time.LocalDateTime) @bci=78, line=127 (Interpreted frame)
Thread 93: (state = BLOCKED)
- sun.misc.Unsafe.park(boolean, long) @bci=0 (Compiled frame; information may be imprecise)
- java.util.concurrent.locks.LockSupport.park(java.lang.Object) @bci=14, line=175 (Compiled frame)
- java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await() @bci=42, line=2039 (Compiled frame)
- java.util.concurrent.LinkedBlockingQueue.take() @bci=29, line=442 (Compiled frame)
- java.util.concurrent.ThreadPoolExecutor.getTask() @bci=149, line=1074 (Compiled frame)
- java.util.concurrent.ThreadPoolExecutor.runWorker(java.util.concurrent.ThreadPoolExecutor$Worker) @bci=26, line=1134 (Interpreted frame)
- java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=5, line=624 (Interpreted frame)
- java.lang.Thread.run() @bci=11, line=748 (Interpreted frame)
Thread 92: (state = IN_VM)
- com.****.patrol.util.PatrolHelper.getRuleByTime(com.****.patrol.entity.StatRule, java.time.LocalDateTime) @bci=430, line=304 (Compiled frame; information may be imprecise)
- com.****.patrol.util.PatrolHelper.getStatRule(java.util.List, java.time.LocalDateTime) @bci=51, line=226 (Compiled frame)
- com.****.patrol.service.impl.InspectServiceImpl.getCalendarData(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.time.LocalDateTime, java.time.LocalDateTime) @bci=252, line=226 (Compiled frame)
- com.****.patrol.controller.InspectController.getCalendarData(java.lang.String, java.lang.String, java.lang.String, java.time.LocalDateTime, java.time.LocalDateTime) @bci=78, line=127 (Interpreted frame)
lookup com.****.patrol.service.impl.InspectServiceImpl.getCalendarData Methods to check …
Attachment reference
Reference resources Java Memory leak analysis Series 2 :jstack Generated Thread Dump Log structure analysis
Reference resources JVM Fault analysis and performance optimization series
Reference resources ThreadDump: How to see the condition of waiting / or any other condition?
Reference resources JVM Of CPU The investigation of the problem of excessive resource occupation
Reference resources Java CPU High occupancy troubleshooting ,windows and Linux
边栏推荐
猜你喜欢

【debug】平台工程接口调试

Bit.Store:熊市漫漫,稳定Staking产品或成主旋律

【登录界面】

Bit.Store:熊市漫漫,稳定Staking产品或成主旋律

Blink SQL内置函数大全

Observable, reliable: the first shot of cloudops series Salon of cloud automation operation and maintenance

Array exercises follow up

Solution of adding st-link to Huada MCU Keil

数仓的字符截取三胞胎:substrb、substr、substring

拥抱云原生:江苏移动订单中心实践
随机推荐
Seven phases of CMS implementation
Pointers and structs
聊聊毕业季
[login interface]
金鱼哥RHCA回忆录:DO447管理项目和开展作业--创建作业模板并启动作业
Labelimg usage guide
Common shell script commands (4)
华大单片机KEIL添加ST-LINK解决方法
Character interception triplets of data warehouse: substrb, substr, substring
数仓的字符截取三胞胎:substrb、substr、substring
【云驻共创】 什么是信息化?什么是数字化?这两者有什么联系和区别?
Is the account opening QR code given by CICC securities manager safe? Who can I open an account with?
Determine whether a variable is an array or an object?
Pyhton crawls Baidu library text and writes it into word document
Mathematical derivation from perceptron to feedforward neural network
Rust 中的枚举和控制流运算
SQL Server - Window Function - 解决连续N条记录过滤问题
刷题笔记-树(Easy)-更新中
One to one relationship
UE4实现长按功能