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)

相关推荐

  • 春节放假几天,今年春节放假有什么安排

    技术春节放假几天,今年春节放假有什么安排谢谢邀请春节放假几天,先前安排好的节日出行在防疫要求下让道,但是我也要说出来和大家分享一下不能实现的安排。1、86岁的母亲告诉我,没有坐过白天的飞机,言下之意想坐一次!基于这个想法

    生活 2021年10月27日
  • 改脸型,大家对改脸型的方法了解多少

    技术改脸型,大家对改脸型的方法了解多少东方人向来崇尚瓜子小脸改脸型,所以瘦脸风大行其道。脸部宽大的原因包括脂肪因素、肌肉因素和骨骼因素。因此,针对上述原因采取不同的瘦脸方法,才能有更好的效果。下面就为大家科普一下常见的改

    生活 2021年10月21日
  • 使用pygame添加会自动移动的球(pygame的python鼠标)

    技术Pygame实现监听鼠标的示例分析Pygame实现监听鼠标的示例分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。初始化参数import pygam

    攻略 2021年12月15日
  • 如何分析Oracle SYSDBA审核

    技术如何分析Oracle SYSDBA审核这篇文章给大家介绍如何分析Oracle SYSDBA审核,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Oracle
    SYSDBA审核受初始化参数audit_

    攻略 2021年11月12日
  • 一氧化碳化学式,一氧化碳的化学符号是什么

    技术一氧化碳化学式,一氧化碳的化学符号是什么一氧化碳是由碳和氧组成,元素符号为C何O,其化学式为CO。 在标准状态下一氧化碳是无色一氧化碳化学式、无味,有毒的气体,其相对分子质量为28,密度为1.25g/L,冰点为-20

    生活 2021年10月22日
  • djangoadmin设置(djangoadmin开发实例)

    技术Django Admin的使用方法是什么本篇内容主要讲解“Django Admin的使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Django Admin的

    攻略 2021年12月22日