kill -3 PID命令获取java应用堆栈信息

简介: kill -3 PID命令获取java应用堆栈信息

一、应用场景:


  当linux服务器出现异常情况(响应缓慢,负载持续飙升)并且服务器没有安装对应的包而无法使用jstack等命令时,可以使用linux的kill相关命令打印堆栈信息。

  命令格式:kill -3 PID


二、执行步骤:


2.1、获取java进程的PID


ps -ef|grep java



结果的第二列数字就是进程对应的pid。


2.2、kill -3 PID


(1)如果项目通过Tomcat进行发布(普通的web项目),则对应的堆栈信息会打印在catalina.out文件中。


(2)如果项目是基于SpringBoot并且使用nohup java -jar xxx.jar & 命令运行,则java堆栈信息会在jar包所在的nohup.out文件中。


三、查看堆栈信息


以nohup.out文件为例:

3.1、cd命令进入SpringBoot jar包所在的目录

3.2、vim nohup.out命令打开文件

3.3、按Shift+G快捷键跳到文件的末尾,再连续按Ctrl+B,直到向上翻页找到堆栈信息(有java.lang.Thread.State关键字)


或者直接输入/java.lang.Thread.State再按Enter键,就可以高亮出关键字,再按N键,可以遍历查看。



 

vim常用翻页快捷键如下


[Ctrl] + [f] 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
[Ctrl] + [b] 屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
[Ctrl] + [d] 屏幕『向下』移动半页
[Ctrl] + [u] 屏幕『向上』移动半页


注:kill -3 PID命令只能打印那一瞬间java进程的堆栈信息,适合在服务器响应慢,

cpu、内存快速飙升等异常情况下使用,可以方便地定位到导致异常发生的java类,解决如死锁、连接超时等原因导致的系统异常问题。该命令不会杀死进程。

相关文章
|
7天前
|
Java Shell Windows
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
16 5
|
5天前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
12 1
|
6天前
|
Java 测试技术
Java接口的生产环境应用注意点
在Java生产环境中,合理使用接口对提升代码质量至关重要。设计接口时应遵循单一职责原则,采用清晰命名,并控制方法数量。默认方法应谨慎使用,避免与实现类产生冲突。通过版本化管理接口更新,确保向后兼容。实现接口时需明确行为,保持实现与接口分离,利用多态增强灵活性。关注性能影响,适当文档注释及充分测试确保接口稳定可靠。综合运用这些策略,可以显著提高系统的可扩展性和维护性。
|
7天前
|
域名解析 分布式计算 网络协议
java遍历hdfs路径信息,报错EOFException
java遍历hdfs路径信息,报错EOFException
21 3
|
9天前
|
JavaScript 前端开发 Java
Java 8 新特性详解及应用示例
Java 8 新特性详解及应用示例
|
9天前
|
Java API
Java中的Lambda表达式及其应用
本文将深入探讨Java中的Lambda表达式,通过简洁易懂的语言和示例代码,帮助读者理解Lambda表达式的定义、优势以及在实际开发中的应用。同时,我们将解析一些常见的使用场景,并展示如何利用Lambda表达式简化代码,提高编程效率。
18 2
|
6天前
|
Java 数据中心 微服务
Java高级知识:线程池隔离与信号量隔离的实战应用
在Java并发编程中,线程池隔离与信号量隔离是两种常用的资源隔离技术,它们在提高系统稳定性、防止系统过载方面发挥着重要作用。
6 0
|
8天前
|
Java 开发者 UED
Java中的异常处理机制:理解与应用
本文深入探讨Java的异常处理机制,通过实例解析如何有效使用try-catch-finally块、throws关键字及自定义异常,以提升代码的健壮性和可维护性。我们将从基础概念入手,逐步过渡到高级应用,为Java开发者提供全面指导。
|
监控 Java
Sigar java 服务器信息探针、监控
Sigar java 服务器信息探针、监控
282 0
|
6天前
|
安全 Java 调度
Java编程时多线程操作单核服务器可以不加锁吗?
Java编程时多线程操作单核服务器可以不加锁吗?
21 2
下一篇
无影云桌面