JVM基础知识:

JVM调优工具:

1.jmap

jmap常用参数

命令:jmap -heap PID >> D:\heap.log

解释:

using thread-local object allocation.		--- 使用本机线程分配
Mark Sweep Compact GC --- 标记MSC GC(MSC是CMS GC算法的Full GC算法) Heap Configuration: ##堆配置情况
MinHeapFreeRatio = 40 ##最小堆使用比例(GC后,如果发现空闲堆内存占到整个堆的40%,则增大上限值)
MaxHeapFreeRatio = 70 ##最大堆可用比例(GC后,如果发现空闲堆内存占到整个堆的70%,则收缩上限值)
MaxHeapSize = 1073741824 (1024.0MB) ##最大堆空间大小 1G
NewSize = 1048576 (1.0MB) ##新生代分配大小 1M
MaxNewSize = 4294901760 (4095.9375MB) ##最大可新生代分配大小 4G
OldSize = 4194304 (4.0MB) ##老生代大小 4M
NewRatio = 2 ##新生代比例(新生代和年老代的堆内存占用比例, 例如:2表示新生代占年老代的1/2,占整个堆内存的1/3)
SurvivorRatio = 8 ##新生代与suvivor的比例(Eden与Survivor的占用比例。例如:8表示一个survivor区占用 1/8 的Eden内存,即1/10的新生代内存)
PermSize = 268435456 (256.0MB) ##perm区大小
MaxPermSize = 268435456 (256.0MB) ##最大可分配perm区大小 Heap Usage: ##堆使用情况
New Generation (Eden + 1 Survivor Space): ##新生代(伊甸区 + survior空间)
capacity = 322109440 (307.1875MB) ##新生代容量307M
used = 226237024 (215.75643920898438MB) ##已经使用大小215M
free = 95872416 (91.43106079101562MB) ##剩余容量91M
70.23607380150051% used ##使用比例70%
Eden Space: ##伊甸区
capacity = 286326784 (273.0625MB) ##伊甸区容量 273M
used = 206511520 (196.94473266601562MB) ##已经使用大小196M
free = 79815264 (76.11776733398438MB) ##剩余容量76M
72.12441571655413% used ##使用比例72%
From Space: ##survior1区
capacity = 35782656 (34.125MB) ##survior1容量 34M
used = 19725504 (18.81170654296875MB) ##已经使用大小 18M
free = 16057152 (15.31329345703125MB) ##剩余容量 15M
55.125879979395606% used ##使用比例55%
To Space: ##survior2区
capacity = 35782656 (34.125MB) ##survior2容量 34M
used = 0 (0.0MB) ##已经使用大小 0M
free = 35782656 (34.125MB) ##剩余容量 34M
0.0% used ##使用比例0%
tenured generation: ##老生代使用情况
capacity = 715849728 (682.6875MB) ##老生代容量 682M
used = 112533120 (107.3199462890625MB) ##已经使用大小 107M
free = 603316608 (575.3675537109375MB) ##剩余容量 575M
15.72021551428179% used ##使用比例15%
Perm Generation: ##perm区使用情况
capacity = 268435456 (256.0MB) ##perm区容量 256M
used = 83002880 (79.15771484375MB) ##已经使用大小 79M
free = 185432576 (176.84228515625MB) ##剩余容量 176M
30.920982360839844% used ##使用比例30%

  

JVM性能调优(out of memory内存溢出/泄露出来)的更多相关文章

  1. JVM性能调优(3) —— 内存分配和垃圾回收调优

    前序文章: JVM性能调优(1) -- JVM内存模型和类加载运行机制 JVM性能调优(2) -- 垃圾回收器和回收策略 一.内存调优的目标 新生代的垃圾回收是比较简单的,Eden区满了无法分配新对象 ...

  2. JVM性能调优(4) —— 性能调优工具

    前序文章: JVM性能调优(1) -- JVM内存模型和类加载运行机制 JVM性能调优(2) -- 垃圾回收器和回收策略 JVM性能调优(3) -- 内存分配和垃圾回收调优 一.JDK工具 先来看看有 ...

  3. JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解

    摘要: JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jstack.jmap.jhat.jstat.hprof等小巧的工具,本博客希望 ...

  4. JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解(转VIII)

    JVM本身就是一个java进程,一个java程序运行在一个jvm进程中.多个java程序同时运行就会有多个jvm进程.一个jvm进程有多个线程至少有一个gc线程和一个用户线程. JDK本身提供了很多方 ...

  5. JVM 性能调优实战之:一次系统性能瓶颈的寻找过程

    玩过性能优化的朋友都清楚,性能优化的关键并不在于怎么进行优化,而在于怎么找到当前系统的性能瓶颈.性能优化分为好几个层次,比如系统层次.算法层次.代码层次…JVM 的性能优化被认为是底层优化,门槛较高, ...

  6. JVM性能调优监控命令jps、jinfo、jstat、jmap+jhat、jstack使用详解

    JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jinfo.jstat.jmap+jhat.jstack等小巧的工具,本博客希望能起抛砖 ...

  7. 《转》:JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解

    原链接:https://my.oschina.net/feichexia/blog/196575 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 ...

  8. 【十一】jvm 性能调优工具之 jmap

    jvm 性能调优工具之 jmap 概述 命令jmap是一个多功能的命令.它可以生成 java 程序的 dump 文件, 也可以查看堆内对象示例的统计信息.查看 ClassLoader 的信息以及 fi ...

  9. 【转】JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解

    http://www.cnblogs.com/therunningfish/p/5524238.html JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsol ...

  10. JDK自带JVM性能调优监控工具jps、jstack、jmap、jhat、jstat

    原文地址:https://www.jianshu.com/p/db954cb968fb JVM性能调优监控工具jps.jstack.jmap.jhat.jstat位于JDK的bin目录,这些工具短小精 ...

随机推荐

  1. OS---存储器

    1.存储器的层次结构 1.1 概述 理想情况下,存储器应当速度非常快.并且与处理器的速度匹配.容量大且价格低廉: 实际情况,无法满足上述三个条件: 于是在现在OS中,存储器采用  层次结构  来组织: ...

  2. 数据库mysql基础语言--各模式的含义

    1. 欢迎信息 欢迎来到 MySQL 镜像.命令以 ; 或 g 结束.你的 MySQL 连接编号为 2.服务器版本:5.1.47-社区 MySQL 社区服务器(GPL) 版权(C)2000.2010, ...

  3. android shape.xml 属性详解

    转载源:http://blog.csdn.net/harvic880925/article/details/41850723 一.简单使用 刚开始,就先不讲一堆标签的意义及用法,先简单看看shape标 ...

  4. (转)shell解析命令行的过程以及eval命令

    shell解析命令行的过程以及eval命令   本文说明的是一条linux命令在执行时大致要经过哪些过程?以及这些过程的大致顺序. 1.1 shell解析命令行 shell读取和执行命令时的大致操作过 ...

  5. LeetCode 455.分发饼干(C++)

    假设你是一位很棒的家长,想要给你的孩子们一些小饼干.但是,每个孩子最多只能给一块饼干.对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸:并且每块饼干 j ,都有一个尺寸 ...

  6. 织梦DEDECMS {dede:arclist},{dede:list}获取附加表字段内容

    以前用织梦DEDECMS做二次开发时获取附加表字段内容都是通过runphp执行SQL查询获得,最近看了看手册,发现一个非常简便的方法. 用arclist调用于附加表字段的方法: 方法一: 要获取附加表 ...

  7. golang精华资源

    转载自:http://blog.csdn.net/songbohr/article/details/13292261 1.Learning Go <学习Go语言> http://www.m ...

  8. 设计模式之装饰器模式io的小入门(十一)

    装饰器模式详解地址 原文总结 定义: 在不必改变原类文件和使用继承的情况下, 动态的扩展一个对象的功能. 通过创建一个包装对象, 也就是装饰来包裹真实的对象 部分详解提示 看了一些文档, 装饰器模式非 ...

  9. CSS的相对定位和绝对定位(position)

    什么是定位呢? 定位(position),故名思议,就是确定元素在页面中的位置. CSS的常用定位有两种,一种是相对定位,一种是绝对定位. 下面我们看例子 <html> <head& ...

  10. (开发)bable - es6转码

    参考:http://www.ruanyifeng.com/blog/2016/01/babel.html Babel Babel是一个广泛使用的转码器,可以将ES6代码转为ES5代码,从而在现有环境执 ...