当前位置: 首页 > article >正文

基于jstack、jmap、jstat 进行JVM监控

文章目录

  • 引言
  • I jmap 内存映像工具
    • 格式
    • 内存分配情况
    • 查看内存的对象
  • II manager webapp
    • /manager/status 查看服务器状态
    • manager/jmxproxy 查询Tomcat指标
  • III jps 查看本机的Java中进程信息
    • 语法格式如下
    • 只显示JVM的进程id
    • 输出传入main方法的参数
    • 输出main类或Jar的全限名
    • 输出传入JVM的参数
    • 其他例子
  • IV jinfo 查看扩展参数
  • V jstack 堆栈跟踪工具
    • 格式
    • Thread的状态转换
    • 应用场景:用jstack加进程id查找死锁
  • VI ps
    • 找出该进程内最耗费 CPU 的线程
    • 分析线程堆栈信息

引言

  1. 分析方法:通过Tomcat的jmap工具、jstat 、服务器状态页面: /manager/status,查看JVM情况,解决问题。
  2. 常见问题: OutOfMemoryError,内存不足;内存泄露;线程死锁;锁争用(Lock Contention);Java进程消耗CPU过高
  3. 解决方案: https://blog.csdn.net/z929118967/article/details/141241950
  4. 分析工具:在JDK的bin目彔下,包含了java命令及其他实用工具。
  • jps:查看本机的Java中进程信息。

  • jstack: 堆栈跟踪工具,打印线程的栈信息,制作线程Dump。 jstack 可以定位到线程堆栈,根据堆栈信息我们可以定位到具体代码,所以它在 JVM 性能调优中使用得非常多。

  • jmap:打印内存映射,制作堆Dump。

  • jstat:性能监控工具。


http://www.kler.cn/a/281361.html

相关文章:

  • Flask 安装和应用
  • 洛谷刷题(6)
  • kubectl陈述式资源管理方式、声明式资源管理
  • 【PyTorch][chapter 27][李宏毅深度学习][transformer-1]
  • SpringBoot集成kafka-监听器手动确认接收消息(主要为了保证业务完成后再确认接收)
  • 探索异步之美:aiohttp库的魔力与奥秘
  • 守护核心命脉:国家网络安全战略下的关键基础设施保护
  • Pandas里使用SQL
  • 稚晖君智元机器人远程机器人系列发布:引领具身智能新高度
  • 软考:软件设计师 — 17.程序设计语言与语言处理程序基础
  • XSS LABS - Level 16 过关思路
  • 结构开发笔记(六):solidworks软件(五):绘制M2x3.0mm螺丝
  • MES系统如何灵活适配多种通信协议及数据采集能力
  • 单向链表和双向链表的一些基本算法
  • XR虚拟拍摄和VP有什么区别
  • git清除所有提交记录及贡献者信息
  • 硬盘数据如何恢复?别慌!5 大策略帮您恢复硬盘数据!
  • Redis缓存分区
  • SAP B1 常用表单的 中英文名称路径(持续更新中)
  • 【C#】【EXCEL】Bumblebee/Classes/ExData.cs