JVM 调优常见参数

Java1.7的jvm参数查看一下官方网站。
http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html
Java1.8
http://docs.oracle.com/javase/8/docs/technotes/tools/windows/java.html
Hotspotvm知识查看一下官方网站。
http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136373.html
主要的参数是:堆的大小、栈的大小、新生代和老年代的比值、新生代中eden和s0、s1的比值。
-Xms:初始堆大小,默认是物理内存的1/64。默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到--Xmx的最大限制。例如:-Xms 20m。
-Xmx:最大堆大小。默认是物理内存的1/4 默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制。
-XX:NewSize=n:设置年轻代大小(初始值)。
-XX:MaxNewSize:设置年轻代最大值。
-XX:NewRatio=n:设置年轻代和年老代的比值。
-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。
-XX:PermSize(1.8之后改为MetaspaceSize) 设置持久代(perm gen)初始值,默认是物理内存的1/64。
-XX:MaxPermSize=n:(1.8之后改为MaxMetaspaceSize)设置最大持久代大小。
-Xss:每个线程的堆栈大小。

JVM 学习思路

jdk --> java develop kit ,jre ---> java runtime environment,java 有个特点:一次编译运行,就是有这个jvm,jvm,java viturl machine
jvm ---> 一、程序隔离区,一个程序共享区 jvm -->堆---> 为了内存溢出---> gc(垃圾)--->判断(引用、可达性分析)--->最终判断生死需要两次判断(如果其中调用了finalize方法,就会复活,不会被回收)
---> 回收算法(标记+清除+整理,复制)--->选择合适的回收器(paranew + cms)--> 对象进入老年代得三种可能,---> jvm分析工具(jps,jmap,jconsole,jstat)

最新文章

  1. PDO概念 分析 练习
  2. Codeforces 696 C. PLEASE
  3. win10 剪贴板 拒绝访问 Cannot open clipboard
  4. SQL2008 提示评估期已过的解决方法
  5. 关于opacity透明度子元素继承现象的若干研究以及hack方法
  6. [转载]Oracle修改表空间大小
  7. Gradle实战:不同编译类型的包同设备共存
  8. Tmux:终端复用器
  9. 数据结构(trie,启发式合并):HDU 5841 Alice and Bob
  10. 使用静态资源设置UI信息
  11. EcStore操作笔记
  12. 使用Mindjet MindManager 制作流程图案例
  13. 关闭Sql Assistant的自动智能命名别名的问题
  14. HDOJ 2102 A计划(bfs)
  15. iOS:(接口适配器3)--iPhone适应不同型号 6/6plus 前
  16. Cocos2d-x-lua游戏两个场景互相切换MainScene01切换到MainScene02
  17. 在右键菜单中加入BitLocker重新上锁功能
  18. 基于C++Qt4开发的白鸽局域网聊天器
  19. [matlab] 23.matlab自带kmeans函数 实现聚类
  20. Speak Confident English

热门文章

  1. Python *Mix_w6
  2. CLR via C#--------CLR的执行模式
  3. vue 关闭浏览器
  4. vue 关于solt得用法
  5. wpf-xaml-命名空间
  6. SpringMVC @RequestBody @RequestParam @PathVariable 等参数绑定注解详解
  7. ItelliJ idea tomcat 配置
  8. 定义action的允许访问方式
  9. java内部类及四种内部类的实现方式
  10. python select解析 socket高效通信服务器 自己写的socketserver