JVM
文章平均质量分 71
ken-jl
QQ:415979576
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MAT(Memory Analyzer tool)使用
当线上环境出现OOM/内存泄漏了,怎么办?让虚拟机在发生内存溢出时 Dump 出当前的内存堆转储快照,配置-XX:+HeapDumpOnOutOfMemoryError,当出现OOM时,分析dump下来的hprof文件,一般使用MAT辅助查看。 安装方式:1 eclipse安装MAT插件;安装说明:https://www.ibm.com/developerworks/cn/opensource/o...原创 2018-05-12 16:29:07 · 787 阅读 · 0 评论 -
JVM基础知识
一、目的通过对线上jvm常见故障的用例的分析,提高大家对系统故障的分析和处理能力,减少系统由故障造成的宕机时间,提高系统的可用性。二、JVM概况jvm为java虚拟机的简称,在这里一般指Oralce旗下的Hotspot,在处理故障前首先必须了解JVM相关基础知识。在此简单介绍如下。1.1.1 虚拟机的基本结构JVM内存基本结构如下 各部分功能详细在此不重复描述,请自行百度或查阅相关书籍。 ...原创 2018-05-06 16:07:12 · 171 阅读 · 0 评论 -
垃圾回收器
HotSpot虚拟机中有7种垃圾收集器:Serial、ParNew、Parallel Scavenge、Serial Old、Parallel Old、CMS、G1。垃圾收集器是垃圾回收算法(标记-清除算法、复制算法、标记-整理算法、分代收集)的具体实现,不同商家、不同版本的JVM所提供的垃圾收集器可能会有很在差别,此处主要介绍HotSpot虚拟机中的垃圾收集器。JDK7/8后,HotSpot虚拟...原创 2018-05-06 16:46:04 · 231 阅读 · 0 评论 -
GC日志
阅读GC日志是处理Java虚拟机内存问题的基础技能,它只是一些人为确定的规则,没有太多技术含量。因此增加本节内容来讲解如何理解GC日志。每一种收集器的日志形式都是由它们自身的实现所决定的,换而言之,每个收集器的日志格式都可以不一样。但虚拟机设计者为了方便用户阅读,将各个收集器的日志都维持一定的共性,例如以下两段典型的GC日志分析。日志分析实例一33.125: [GC [DefNew: 3324K-...原创 2018-05-06 17:12:17 · 200 阅读 · 0 评论 -
jmap, jhat命令
jmap命令有下面几种常用的用法jmap [pid]jmap -histo:live [pid] >a.logjmap -dump:live,format=b,file=xxx.xxx [pid]用得最多是后面两个。其中,jmap -histo:live [pid] 可以查看当前Java进程创建的活跃对象数目和占用内存大小。 jmap查看各个代的内存使用jmap 可以从 core du...原创 2018-05-06 18:11:52 · 457 阅读 · 0 评论 -
jstat命令
概述Jstat 查看某个Java进程内的线程堆栈信息,用于监控基于HotSpot的JVM,对其堆的使用情况进行实时的命令行的统计,使用jstat我们可以对指定的JVM做如下监控:- 类的加载及卸载情况- 查看新生代、老生代及持久代的容量及使用情况- 查看新生代、老生代及持久代的垃圾收集情况,包括垃圾回收的次数及垃圾回收所占用的时间- 查看新生代中Eden区及Survior区中容量及分配情况等常用命...原创 2018-05-06 18:23:55 · 706 阅读 · 0 评论 -
线程dump
当应用程序运行变慢或者发生故障时,可能通过分析java的Thread Dumps得到分析他们得到阻塞和存在瓶颈的线程。线程堆栈是虚拟机中线程(包括锁)状态的一个瞬间状态的快照,即系统在某一个时刻所有线程的运行状态,包括每一个线程的调用堆栈,锁的持有情况。主要包含的信息包括 1、线程名字,id,线程的数量等。 2、线程的运行状态,锁的状态(锁被哪个线程持有,哪个线程在等待锁等) 3、调用堆...原创 2018-05-06 18:32:38 · 710 阅读 · 0 评论 -
Java故障分析基础
JVM基础垃圾回收器GC日志jps, jinfo命令jmap, jhat命令jstat命令线程dumpjvisualVM / jconsole 参考链接:JVM性能调优监控工具专题一:JVM自带性能调优工具(jps,jstack,jmap,jhat,jstat,hprof)JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解...原创 2018-05-06 18:44:44 · 272 阅读 · 0 评论 -
jps, jinfo命令
jps主要用来输出JVM中运行的进程状态信息。-q 不输出类名、Jar名和传入main方法的参数-m 输出传入main方法的参数-l 输出main类或Jar的全限名-v 输出传入JVM的参数 jinfo ...原创 2018-05-06 19:21:26 · 635 阅读 · 0 评论
分享