jstack怎么分析线程状态(jstack查看线程卡住情况)

技术如何通过top 和 jstack 确定哪些线程耗尽CPU本篇文章给大家分享的是有关如何通过top 和 jstack 确定哪些线程耗尽CPU,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,

这篇文章是关于如何确定哪些线程通过top和jstack耗尽了CPU。边肖觉得很实用,就分享给大家学习一下。希望你看完这篇文章能有所收获。让我们和边肖一起看看。

背景

在线集群负载会突然飙升,CPU利用率会达到100%,无法响应正常请求,然后服务器就会宕机。

那么导致负载激增的线程到底在做什么呢?哪些线程占用CPU?您可以通过top和jstack命令进行定位。

定位步骤

1.top找出占用高CPU的进程PID。

如何通过top  和 jstack  确定哪些线程耗尽CPU

2.top -p PID -H命令找出进程中占用CPU最高的线程。

3.根据线程ID(需要从十进制转换为十六进制),从线程栈中找出第二步找到的线程。

printf0x%x 43845

如何通过top  和 jstack  确定哪些线程耗尽CPU

4.命令打印出线程堆栈

如何通过top  和 jstack  确定哪些线程耗尽CPU

发现大量GC线程正在运行。

为什么是GC线程?

最后的定位问题是调用数据库查询方法List queryForList(Query query)拉取大量数据集加载到内存中,这些数据集还是小数据。小数据最初是通过JVM加载到年轻一代的,但是年轻一代的内存很快就满了,数据是通过JVM yongGC传输到老一代的。但是老一辈的内存也很快被填满,使用了JVM满GC,导致雪崩,内存利用率100%,CPU利用率100%。

以上是如何通过top和jstack确定哪些线程用完了CPU。边肖认为,一些知识点可能会在我们的日常工作中看到或使用。我希望你能通过这篇文章学到更多的知识。更多详情请关注行业资讯频道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/144632.html

(0)

相关推荐

  • hot的比较级,形容词比较级双写+er的有哪些

    技术hot的比较级,形容词比较级双写+er的有哪些在重读闭音节(即:辅音+元音+辅音)中hot的比较级,要双写结尾的辅音字母,然后比较级加er,列举如下:bigger,thinner,fatter,hotter,slim

    生活 2021年10月29日
  • git版本控制gitosis的安装与使用是怎样的

    技术git版本控制gitosis的安装与使用是怎样的git版本控制gitosis的安装与使用是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所

    攻略 2021年11月10日
  • 怎么在PAAS平台上部署O2OA开发平台

    技术怎么在PAAS平台上部署O2OA开发平台这篇文章主要讲解了“怎么在PAAS平台上部署O2OA开发平台”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在PAAS平台上

    攻略 2021年10月30日
  • 力扣

    技术力扣 力扣 - 剑指 Offer 24. 反转链表题目
    剑指 Offer 24. 反转链表
    思路1(迭代)使用一个指针pre指向上一个节点,初始值为null,然后遍历链表,一边遍历一遍交换指针指向:

    礼包 2021年11月19日
  • CSS网页布局中容易发生的错误编码有哪些

    技术CSS网页布局中容易发生的错误编码有哪些本篇内容介绍了“CSS网页布局中容易发生的错误编码有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大

    攻略 2021年12月10日
  • 怎么用Java实现Android地理信息系统经纬度与度分秒互转

    技术怎么用Java实现Android地理信息系统经纬度与度分秒互转本篇内容介绍了“怎么用Java实现Android地理信息系统经纬度与度分秒互转”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小

    攻略 2021年11月15日