tomcat cpu占用过高的问题

妈了个鸡腿 妈了个鸡腿 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
确定是以下两个Thread占用过高,求问如何解决?

"ajp-nio-8009-ClientPoller-0" #53 daemon prio=5 os_prio=0 tid=0x000000001af75800 nid=0x3f6c runnable [0x000000001f38e000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:296)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:278)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:159)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked <0x000000008045c548> (a sun.nio.ch.Util$3)
- locked <0x000000008045c538> (a java.util.Collections$UnmodifiableSet)
- locked <0x000000008045c3c8> (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:825)
at java.lang.Thread.run(Thread.java:748)

Locked ownable synchronizers:
- None


"NioBlockingSelector.BlockPoller-2" #25 daemon prio=5 os_prio=0 tid=0x000000001a6a6000 nid=0x2c2c runnable [0x000000001c7bf000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:296)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:278)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:159)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked <0x0000000080473840> (a sun.nio.ch.Util$3)
- locked <0x0000000080473830> (a java.util.Collections$UnmodifiableSet)
- locked <0x0000000080469600> (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioBlockingSelector$BlockPoller.run(NioBlockingSelector.java:298)

Locked ownable synchronizers:
- None
...全文

相关推荐

记一次tomcat进程cpu占用过高的问题排查记录

本文主要记录一次tomcat进程,因TCP连接过多导致CPU占用过高的问题排查记录。 问题描述 linux系统下,一个tomcat web服务的cpu占用率非常高,top显示结果超过200%。请求无法响应。反复重启依然同一个现象。 问题排查 1、获取进程信息 通过jdk提供的jps命令可以快速查出jvm进程, jps pid 2、查看jstack信息 jstack pid 发现存在大量log4j线程block,处于waiting lock状态 org.apache.log4j.Category.callAppenders(org.apache.log4j.spi.LoggingE

weixin_38597990

分析tomcat占用cpu高的原因

分析tomcat占用cpu高的原因

程序员大本营

一次因Java应用造成CPU过高的排查实践过程

一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环。下面这篇文章主要给大家介绍了一次因Java应用造成CPU过高的排查实践过程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

weixin_38625048

tomcat cpu high

tomcat cpu hightomcat cpu high

jiwei325

高CPU占用排查方法[项目源码]

本文详细介绍了在Linux环境下排查Java应用高CPU占用的方法。通过top命令定位到问题进程后,使用ps命令进一步确认是tomcat进程出现问题。接着通过ps -mp pid -o THREAD,tid,time命令显示线程列表,找到耗时最高的线程。然后使用printf命令将线程ID转换为16进制格式,最后通过jstack命令打印线程的堆栈信息,定位到具体的问题代码。文章还分析了问题代码的原因,并提供了修改建议。此外,还总结了排查CPU故障的其他方法和技巧,包括使用top、PS、jstack和pstack等命令。最后,文章还介绍了如何使用jhat工具分析Java堆复制文件,以及如何使用jstat命令监视JVM内存情况。

ik67890123
评论 5
收藏 已收藏
分享
返回顶部
妈了个鸡腿
Web 开发 81,108 成员 341,721 内容