为什么80%的码农都做不了架构师?>>>   

1. jps 查看Java进程ID

$ jps
9788 Jps
7504 Bootstrap
3820 org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar

2. jstat 查看Java状态

查看Java gc状态

$sudo jstat -gc 18963S0C    S1C    S0U    S1U      EC       EU        OC         OU       PC     PU    YGC     YGCT    FGC    FGCT     GCT
218432.0 218432.0  0.0   3648.1 2184576.0 1130415.9 1572864.0   62074.9   154388.0 103149.4    127    3.047   2      0.623    3.670

S0C:年轻代中第一个survivor(幸存区)的容量 (字节)

S1C:年轻代中第二个survivor(幸存区)的容量 (字节)

S0U :年轻代中第一个survivor(幸存区)目前已使用空间 (字节)

S1U:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)

EC :年轻代中Eden(伊甸园)的容量 (字节)

EU :年轻代中Eden(伊甸园)目前已使用空间 (字节)

OC :Old代的容量 (字节)

OU :Old代目前已使用空间 (字节)

PC:Perm(持久代)的容量 (字节)

PU:Perm(持久代)目前已使用空间 (字节)

YGC  :从应用程序启动到采样时年轻代中gc次数

YGCT :从应用程序启动到采样时年轻代中gc所用时间(s)

FGC :从应用程序启动到采样时old代(全gc)gc次数

FGCT :从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT:从应用程序启动到采样时gc用的总时间(s)

查看Java 内存空间使用情况,主要查看交换区、Eden、老生代、常量池的使用百分比

sudo jstat -gcutil 18963S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT   1.45   0.00  86.09   4.00  66.82    168    3.650     2    0.623    4.273

查看加载的class的数量

$sudo jstat -class 18963
Loaded  Bytes  Unloaded  Bytes     Time   16850 33388.9        0     0.0      26.21

查看编译的数量

$sudo jstat -compiler 18963
Compiled Failed Invalid   Time   FailedType FailedMethod5857      0       0    92.43          0

3. jinfo 打印java进程的配置信息

sudo jinfo 18963

4. jmap 生成虚拟机的内存快照

sudo jmap 18963

5. jstack 显示虚拟机的线程快照

jstack 14298     #查看线程 -F 强制查看
top -p 14292 -H    查看线程占用CPU
sudo jstack -F 4284 | grep -A 10 5017  #查看进程中某一个线程,显示10行

转载于:https://my.oschina.net/boltwu/blog/705088

Java深入 - Java虚拟机性能问题监控和排查相关推荐

  1. java mission control_JVM系列九(虚拟机性能监控工具 - Java Mission Control).

    一.写在前面 上一篇文章 我们介绍了性能监控的一些命令,包括 jmap (生成堆存储快照)和 jstack(生成线程快照),事实上,在没有一些监控工具之前,我们用的最多的也是这两个命令来进行虚拟机性能 ...

  2. 深入理解Java虚拟机-如何利用 JDK 自带的命令行工具监控上百万的高并发的虚拟机性能...

    虚拟机系列文章 深入理解 Java 虚拟机(第一弹) - Java 内存区域透彻分析 深入理解 Java 虚拟机(第二弹) - 常用 vm 参数分析 深入理解 Java 虚拟机-如何利用 Visual ...

  3. 深入理解JAVA虚拟机 虚拟机性能监控和故障处理工具

    jre的bin目录下的工具,都非常小.它都是tools.jar下面的代码的一层封装而已.tools.jar不是java标准,是Hotspot实现的. 名称 作用 jps JVM Process Sta ...

  4. 深入理解Java虚拟机-如何利用 JDK 自带的命令行工具监控上百万的高并发的虚拟机性能

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:打卡活动第二期来啦,100% 能获得奖品个人原创+1博客:点击前往,查看更多 虚拟机系列文章 深入理解 Java ...

  5. 《深入理解JAVA虚拟机》周志明 第三版 - 第四章 虚拟机性能监控、故障处理工具

    4.1 概述 恰当地使用虚拟机故障处理.分析的工具可以提升我们分析数据.定位并解决问题的效率. 4.2 基础故障处理工具 JDK的bin目录中有java.exe.javac.exe这两个命令行工具,还 ...

  6. 《深入理解Java虚拟机第3版》垃圾收集器与内存分配策略、虚拟机性能监控故障处理工具

    目录 往期博客:Java课堂篇3_初识JMM.常量池简单理解(字符串常量池.静态常量池.大整型常量池) 为什么要了解垃圾收集和内存分配? 如何判断对象已死? 引用计数算法 可达性分析算法 JDK1.2 ...

  7. Java虚拟机性能监控工具草览

    为什么80%的码农都做不了架构师?>>>    方法.套路.工具,都能提高生产力.做了一轮压测,顺道列列虚拟机的工具. 一. Java虚拟机有哪些性能工具 我们按操作方式分为两类,有 ...

  8. Java生产环境下性能监控与调优详解 大纲 学习感悟

    Java生产环境下性能监控与调优详解 生产环境发生了内存溢出如何处理? 生产环境应该给服务器分配多少内存合适? 如何对垃圾收集器的性能进行调优? 4.生产环境CPU负载飙高该如何处理? 5.生产环境应 ...

  9. Java生产环境下性能监控与调优详解 第2章 基于JDK命令行工具的监控

    Java生产环境下性能监控与调优详解 第2章 基于JDK命令行工具的监控 2-1 JVM的参数类型 标准参数 x参数 XX参数 2-2 查看JVM运行时参数 2-3 jstat查看JVM统计信息 2- ...

最新文章

  1. N001-SQL Server 2016企业版本安装
  2. NASA 顶级程序员是如何编程的?这里有十大准则
  3. jena fuseki RDF应用
  4. [转载] python价值算法_PangRank算法原理及其Python实现
  5. 初识机器学习_04 朴素贝叶斯
  6. LeetCode 1 两数之和 python
  7. WebLogic的下载和安装
  8. 当下主流的数据库及其特点
  9. JAVA泡泡堂网络游戏的设计与实现
  10. MySQL奇偶数判断
  11. Unity利用代码生成空心立方体(立方体挖走一个圆柱)
  12. linux下LPC访问CPLD
  13. mac桌面壁纸_在Mac上从命令行设置桌面墙纸
  14. 2019年上半年网络安全态势报告
  15. 【以终为始】接到需求任务,你要先做哪件事?
  16. 软件推荐-国内参数优化软件:1stOpt - First Optimizationg
  17. php龙之战争游戏搭建教程,沙漠副本龙之战争 快速杀龙王4条经验
  18. 算法设计与分析实验指导(完整版)
  19. STM32串口通信代码正确串口却没反应
  20. java工程师应届生工资一般多少,附架构师必备技术详解

热门文章

  1. 亟待学习的内容 提醒贴
  2. wordpress rest api 漏洞又来了CVE-2017-5487 上次是修改文章内容这次可是泄露用户数据...
  3. Kubernetes Node Controller源码分析之配置篇
  4. 大数据“下田”,未来农业将成为世界上最重要的产业之一
  5. 阿里云免费试用之体验——阿里云serverECS试用心得
  6. 彻底封杀讯雷下载,做好网络管理
  7. Gnome2.30 GDM圖片風格設置方式
  8. JS设计模式初识(四)-迭代器模式
  9. 猥琐思路复现Spring WebFlow远程代码执行
  10. SoapUI Pro Project Solution Collection-DataSource(jdbc,excel)