![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM优化
文章平均质量分 93
小强同志
这个作者很懒,什么都没留下…
展开
-
JVM调优实战及常量池详解二
GC日志详解对于java应用我们可以通过一些配置把程序运行过程中的gc日志全部打印出来,然后分析gc日志得到关键性指标,分析 GC原因,调优JVM参数。 打印GC日志方法,在JVM参数里增加参数‐XX:+PrintGCDetails ‐XX:+PrintGCTimeStamps ‐XX:+PrintGCDateStamps ‐Xloggc:./gc.log Tomcat则直接加在JAVA_OPTS变量里。如何分析GC日志 下图中是我截取的JVM刚启动的一部分GC日志我们可以看到图中第原创 2022-02-04 15:11:36 · 143 阅读 · 0 评论 -
JVM调优工具详解一
Jmap此命令可以用来查看内存信息。实例个数以及占用内存大小打开log.txt,文件内容如下:num:序号 instances:实例数量 bytes:占用空间大小 class name:类名称,[C is a char[],[S is a short[],[I is a int[],[B is a byte[],[[I is a int[][]堆信息堆内存dump也可以设置内存溢出自动导出dump文件(内存很大的时候,可能会导不出来)1. -XX...原创 2022-02-04 13:27:50 · 264 阅读 · 0 评论 -
垃圾收集器ParNew&CMS&G1详解
1.垃圾收集器如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。虽然我们对各个收集器进行比较,但并非为了挑选出一个最好的收集器。因为直到现在为止还没有 最好的垃圾收集器出现,更加没有万能的垃圾收集器,我们能做的就是根据具体应用场景选择适合 自己的垃圾收集器。试想一下:如果有一种四海之内、任何场景下都适用的完美收集器存在,那么 我们的Java虚拟机就不会实现那么多不同的垃圾收集器了。1.1 Serial收集器(-XX:+UseSerialGC -XX:+UseSerial原创 2022-02-03 20:42:41 · 1689 阅读 · 0 评论 -
JVM内存分配机制与垃圾回收算法
1.JVM内存分配与回收 1.1 对象优先在Eden区分配 大多数情况下,对象在新生代中 Eden 区分配。当 Eden 区没有足够空间进行分 配时,虚拟机将发起一次Minor GC。我们来进行实际测试一下。 在测试之前我们先来看看 Minor GC和Full GC 有什么不同呢?...原创 2022-02-03 10:05:49 · 647 阅读 · 0 评论 -
JVM内存模型深度剖析
一、JVM整体结构及内存模型二、JVM内存参数设置Spring Boot程序的JVM参数设置格式(Tomcat启动直接加在bin目录下catalina.sh文件里):java ‐Xms2048M ‐Xmx2048M ‐Xmn1024M ‐Xss512K ‐XX:MetaspaceSize=256M ‐XX:MaxMetaspaceSize=256M ‐jar microservice‐eurek a‐server.jarStackOverflowError示例:// JVM设置 ‐X.原创 2022-02-02 22:26:11 · 531 阅读 · 0 评论 -
类加载机制深度剖析
1、类加载过程 多个java文件经过编译打包生成可运行jar包,最终由java命令运行某个主类的main函数启 动程序,这里首先需要通过类加载器把主类加载到JVM。 主类在运行过程中如果使用到其它类,会逐步加载这些类。 注意,jar包里的类不是一次性全部加载的,是使用到时才加载。 类加载到使用整个过程有如下几步: 加载 >> 验证 >> 准备 >> 解析 >> 初始化 >> 使用 >> 卸载加载:在硬盘原创 2022-02-02 21:42:54 · 154 阅读 · 0 评论