jvm调优

ps -ef |grep 项目名字  (获取pid)

jstat -gcutil 15364 5000 10  (每5S输出此进程的gc情况,一共输出10次)

输出结果如下:

  S0         S1       E         O        P      YGC  YGCT  FGC  FGCT  GCT

  0.00  62.43  74.04  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  74.38  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  74.93  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  75.65  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  76.01  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  76.30  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  76.91  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  77.00  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  78.06  21.08  47.23    261  10.810    0    0.000  10.810

  0.00  62.43  78.54  21.08  47.23    261  10.810    0    0.000  10.810

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

S1:另一个Survivor 区   YGCT :从应用程序启动到采样时年轻代中gc总耗时 

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

O:老年代     FGCT:从应用程序启动到采样时full中gc总耗时

P:永久代  jdk1.8无永久代  GCT :从应用程序启动到采样时年轻代+fullgc总耗时

jmap -heap pid (查看进程的内存使用情况)

输出如下:
using thread-local object allocation.

  Parallel GC with 4 thread(s)//GC 方式 

  Heap Configuration: //堆内存初始化配置

    MinHeapFreeRatio = 0 //对应jvm启动参数-XX:MinHeapFreeRatio设置JVM堆最小空闲比率(default 40)

    MaxHeapFreeRatio = 100 //对应jvm启动参数 -XX:MaxHeapFreeRatio设置JVM堆最大空闲比率(default 70)

    MaxHeapSize      = 2082471936 (1986.0MB) //对应jvm启动参数-XX:MaxHeapSize=设置JVM堆的最大大小

    NewSize          = 1310720 (1.25MB)//对应jvm启动参数-XX:NewSize=设置JVM堆的‘新生代’的默认大小

    MaxNewSize      = 17592186044415 MB//对应jvm启动参数-XX:MaxNewSize=设置JVM堆的‘新生代’的最大大小

    OldSize          = 5439488 (5.1875MB)//对应jvm启动参数-XX:OldSize=:设置JVM堆的‘老生代’的大小

    NewRatio        = 2 //对应jvm启动参数-XX:NewRatio=:‘新生代’和‘老生代’的大小比率

    SurvivorRatio    = 8 //对应jvm启动参数-XX:SurvivorRatio=设置年轻代中Eden区与Survivor区的大小比值

    PermSize        = 21757952 (20.75MB)  //对应jvm启动参数-XX:PermSize=:设置JVM堆的‘永生代’的初始大小

    MaxPermSize      = 85983232 (82.0MB)//对应jvm启动参数-XX:MaxPermSize=:设置JVM堆的‘永生代’的最大大小

    G1HeapRegionSize = 0 (0.0MB) 

  Heap Usage://堆内存使用情况

  PS Young Generation

  Eden Space://Eden区内存分布

    capacity = 33030144 (31.5MB)//Eden区总容量

    used    = 1524040 (1.4534378051757812MB)  //Eden区已使用

    free    = 31506104 (30.04656219482422MB)  //Eden区剩余容量

    4.614088270399305% used //Eden区使用比率

  From Space:  //其中一个Survivor区的内存分布

    capacity = 5242880 (5.0MB)

    used    = 0 (0.0MB)

    free    = 5242880 (5.0MB)

    0.0% used

  To Space:  //另一个Survivor区的内存分布

    capacity = 5242880 (5.0MB)

    used    = 0 (0.0MB)

    free    = 5242880 (5.0MB)

    0.0% used

  PS Old Generation //当前的Old区内存分布

    capacity = 86507520 (82.5MB)

    used    = 0 (0.0MB)

    free    = 86507520 (82.5MB)

    0.0% used

  PS Perm Generation//当前的 “永生代” 内存分布

    capacity = 22020096 (21.0MB)

    used    = 2496528 (2.3808746337890625MB)

    free    = 19523568 (18.619125366210938MB)

    11.337498256138392% used 

  670 interned Strings occupying 43720 bytes.

你可能感兴趣的:(jvm调优)