当前位置:首页 > JAVA > 正文内容

springboot假死状态排查记录

高老师2年前 (2024-11-05)JAVA490

首先找到进程编号信息,执行jps输出所有java进程

jps
190276 mos-x3-gls-weimob-service-2022.3.RELEASE.jar
190469 mos-x3-gls-cdp-service-2022.3.RELEASE.jar
199988 mos-x3-gls-tripartite-service-2022.3.RELEASE.jar
1064 Bootstrap
190366 mos-x3-gls-service-2022.3.RELEASE.jar
202271 Jps
71420 x3-cloud-externalapiproxy-center-2022.3.RELEASE.jar
172911 mos-x3-gls-custom-service-2022.3.RELEASE.jar
190573 mos-x3-gls-demogic-service-2022.3.RELEASE.jar

左边是进程编号,然后调用JStack生成 Java 进程的线程堆栈信息

JStack  199988 > output.txt
  • JStack 输出中会显示每个线程的状态,常见的状态有:

    • RUNNABLE:表示线程正在运行或准备运行。

    • BLOCKED:表示线程被阻塞,通常是在等待获取锁。

    • WAITING:表示线程正在等待某个条件或信号。

    • TIMED_WAITING:表示线程正在等待一段时间,通常是在等待某个超时条件。

很快找到阻塞问题

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/847.html

分享给朋友:

“springboot假死状态排查记录” 的相关文章

Java不用编译直接执行

Java不用编译直接执行

public class test {     public static void main(String[] args) {     &...

java编译编码问题,java编译执行时编码问题

java编译编码问题,java编译执行时编码问题

public class test {     public static void main(String[] args) {     &...

java限制1个方法同一时间只能被一个线程访问

java限制1个方法同一时间只能被一个线程访问

java限制1个方法同一时间只能被一个线程访问public synchronized void setOrderPay(){ }加上synchronized 修饰符即可...

java增强型for循环

java增强型for循环

Java5 引入了一种主要用于数组的增强型 for 循环,类似js中的for inpublic class Member {     public static void main(String[]&...

java日期和时间

java日期和时间

(1).java获取当前日期时间Date date = new Date();  System.out.println(date.toString());输出Fri Jul 02 10:29:55 CST 2021(2).java获取时间戳秒/毫秒D...

java正则appendReplacement方法和java正则appendTail

java正则appendReplacement方法和java正则appendTail

假如有个字符串为"fatcatfatcatfat",正则为“cat”当调用appendReplacement(sb, "dog")时appendReplacement方法都会把匹配到的内容替换为dog,并把匹配到字符串的前面几个字符串+dog送给sb里,所以第...