Jvm参数调优初探索(一)
2017-05-08 20:11
225 查看
之前学习Jvm相关的理论知识,偶尔可能在程序出现内存溢出时候会放下手中工作调一下参数,解决问题。但是没有系统实践过,最近相对比较稍微轻松一点,尝试实践一些Jvm参数的使用,并记录一下笔记!
本次程序尝试使用的jvm参数有:
-XX:+PrintCommandLineFlags 打印jvm的参数的参数
例如:写一个HelloWorld程序,将VM参数设置为:-XX:+PrintCommandLineFlags ,将会输出如下信息:
-XX:InitialHeapSize=64718336 -XX:MaxHeapSize=1035493376 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC
通过输出信息我们可以看出程序的JVM参数为:初始堆大小为=64718336 ,最大堆大小为:1035493376等信息!
-XX:+PrintGCDetails参数是程序运行时候打印JVM运行的垃圾回收信息
设置最大堆最小堆大小 -Xmx1000m -Xms1000m
-XX:NewRatio=4 老年代和新生代的堆内存分配,例如此时如果堆=1000MB的话,那么此时老年代大小就是800MB,新生代大小是200MB(Eden+S0+S1一共200MB)
-XX:SurvivorRatio=3 设置eden/s0=eden/s1,在本程序中由于SurvivorRatio=3 所以eden/s0=eden/s1=3,因此如果新生代有200MB的大小的话,则Eden=120MB,s0=s1=40,所以一共为120+40+40=200
例如程序:
package com.daxin;
/**
*
* @author daxin
*
* @email leodaxin@163com
*
* @date 2017年5月8日 下午8:06:13
*
*/
public class VM {
public static void main(String[] args) {
System.out.println("Hello World ...");
}
}
我们可以使用jdk附带的工具jvisualvm来查看堆栈信息:
新生代和老年代的堆栈信息分配和我们陈述的正好吻合!
本次程序尝试使用的jvm参数有:
-XX:+PrintCommandLineFlags 打印jvm的参数的参数
例如:写一个HelloWorld程序,将VM参数设置为:-XX:+PrintCommandLineFlags ,将会输出如下信息:
-XX:InitialHeapSize=64718336 -XX:MaxHeapSize=1035493376 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC
通过输出信息我们可以看出程序的JVM参数为:初始堆大小为=64718336 ,最大堆大小为:1035493376等信息!
-XX:+PrintGCDetails参数是程序运行时候打印JVM运行的垃圾回收信息
设置最大堆最小堆大小 -Xmx1000m -Xms1000m
-XX:NewRatio=4 老年代和新生代的堆内存分配,例如此时如果堆=1000MB的话,那么此时老年代大小就是800MB,新生代大小是200MB(Eden+S0+S1一共200MB)
-XX:SurvivorRatio=3 设置eden/s0=eden/s1,在本程序中由于SurvivorRatio=3 所以eden/s0=eden/s1=3,因此如果新生代有200MB的大小的话,则Eden=120MB,s0=s1=40,所以一共为120+40+40=200
例如程序:
package com.daxin;
/**
*
* @author daxin
*
* @email leodaxin@163com
*
* @date 2017年5月8日 下午8:06:13
*
*/
public class VM {
public static void main(String[] args) {
System.out.println("Hello World ...");
}
}
我们可以使用jdk附带的工具jvisualvm来查看堆栈信息:
新生代和老年代的堆栈信息分配和我们陈述的正好吻合!
相关文章推荐
- JVM调优——之CMS 常见参数解析
- JVM调优-java虚拟机内存模型及参数设置
- jvm参数调优
- 垃圾回收调优及JVM参数详解
- JVM常用调优参数
- JVM常用调优参数
- JVM实用参数(四)内存调优
- 垃圾回收调优及JVM参数详解
- JVM 参数配置及详解 -Xms -Xmx -Xmn -Xss 调优总结
- JVM参数配置与性能调优
- java jvm 参数 -Xms -Xmx -Xmn -Xss 调优总结
- JVM参数调优,无停滞实践
- java jvm 参数 -Xms -Xmx -Xmn -Xss 调优总结
- JVM启动参数详解(含调优)
- JVM参数调优---转载留着备用
- jvm调优具体参数配置
- JVM(6)--JVM各种参数及调优
- [HotSpot VM] JVM调优的"标准参数"的各种陷阱
- 实例讲解JVM参数调优的八条经验
- 垃圾回收调优及JVM参数详解(经典)