随笔分类 -  JVM

JVM相关的知识及调优方面
摘要:1.src\share\vm\opto\compile.hpp 设置字段为不可重写的属性 2.src\share\vm\classfile\classFileParser.cpp 在类加载阶段验证其是否继承了final类 验证是否重写final方法 解析方法时,将修饰符进行传递 3.final变量 阅读全文
posted @ 2021-01-15 18:15 大众思索 阅读(174) 评论(0) 推荐(0) 编辑
摘要:GC调优 固定参数: -Xms100m -Xmx100m -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:gclog.txt 1.并行收集器 实时监控结果如图: 从图中可以看到,在30s内发生了4618次YGC,耗时6.862s;发生了FullG 阅读全文
posted @ 2021-01-15 03:26 大众思索 阅读(78) 评论(0) 推荐(0) 编辑
摘要:逃逸分析,在JDK1.7以后,默认开启的一个配置 会进行判断当前对象是否存在逃逸行为,逃逸分为:方法逃逸和线程逃逸; 方法逃逸:当前对象是否被其他方法引用; 线程逃逸:当前对象是否被其他线程引用; 如果没有逃逸是怎么优化当前对象? 1.栈上分配 直接在栈上分配即可 2.标量替换 例: Person  阅读全文
posted @ 2021-01-15 00:32 大众思索 阅读(111) 评论(0) 推荐(0) 编辑
摘要:├─agent Serviceability Agent的客户端实现 ├─make 用来build出HotSpot的各种配置文件 ├─src HotSpot VM的源代码 │ ├─cpu CPU相关代码(汇编器、模板解释器、ad文件、部分runtime函数在这里实现) │ ├─os 操作系相关代码 阅读全文
posted @ 2021-01-11 14:49 大众思索 阅读(94) 评论(0) 推荐(0) 编辑
摘要:help——查看命令帮助信息 cat——打印文件内容,和linux里的cat命令类似 pwd——返回当前的工作目录,和linux命令类似 cls——清空当前屏幕区域 session——查看当前会话的信息 reset——重置增强类,将被 Arthas 增强过的类全部还原,Arthas 服务端关闭时会重 阅读全文
posted @ 2021-01-10 21:44 大众思索 阅读(92) 评论(0) 推荐(0) 编辑
摘要:常用工具 1.jps 主要是看虚拟机的相关参数配置 命令: JPS 查看运行的进程 2.Jinfo X 实时调整和查看虚拟机参数 命令: -flags 只查看JVM的配置信息 -sysprops 查看系统参数 +PrintGCDetails 增加GC详情 3.jstat 类加载,内存,垃圾收集,ji 阅读全文
posted @ 2021-01-08 01:01 大众思索 阅读(66) 评论(0) 推荐(0) 编辑
摘要:java -X 查看vm(HotSport)参数设置 java -XX: +PrintFlagsInitial 查看JVM初始参数 java -XX: +PrintFlagsFinal 查看设置的参数 阅读全文
posted @ 2021-01-08 00:05 大众思索 阅读(129) 评论(0) 推荐(0) 编辑
摘要:调优-参数 调优具体哪些方面? 提高吞吐量 提高响应时间(降低STW(STOP THE WORD)) 垃圾回收器的选择 -XX: +UseXXXGC 参数的设置 -XX: PermSize 永久区(JDK8以前) -Xms 堆初始值 (堆) -Xmx 堆最大值 -XX: NewRatio 年轻代和老 阅读全文
posted @ 2021-01-07 23:45 大众思索 阅读(72) 评论(0) 推荐(0) 编辑
摘要:G1相关的参数配置 -XX:+UseG1GC: 设置使用G1垃圾回收器 -XX:MaxGCPauseMillis=n: 最大GC停顿时间,毫秒值 -XX:InitatingHeapOccupancyPercent=n: 当堆空间占用到n兆时就触发GC(45) -XX:GoncGCThreads=n: 阅读全文
posted @ 2021-01-07 23:22 大众思索 阅读(763) 评论(0) 推荐(0) 编辑