jvm系列文章
文章平均质量分 78
二缺和傻宝宝
互相学习
展开
-
关于内存分析的一些解释和总结
关于mat工具比如如下的图片,分析时候很常见:刚看到这个类型的图片,不知道大家清不清楚各个颜色区域的含义,详情请参考这篇文章,对Actions的详细说明,左下角有一个说明,Retained Size,它代表的含义是:当实例A被回收时, 可以同时被回收的实例的Shallow Size之和;详细的可以参考这篇文章:Shallow Size和Retained Size详解with outgoing references——对象引用了哪些对象with incoming references——对象被哪原创 2021-10-31 00:59:11 · 203 阅读 · 0 评论 -
线上服务器内存优化(一)
在上篇文章<线上服务器内存不断飙升定位>基础上继续进行,问题定位到了,那就开始优化,本地缓存+线程池合理使用两大块;本地缓存已经在上篇文章说明了<项目中如何整合本地缓存>,改造上线后,在内存高的情况下,再次dump了内存快快照,发现内存泄露的情况好很多但是我还是发现一个现象就是每次服务器重启,内存都是一个直线上升的状态,直接先飙到快60%,然后才稳定下来,慢慢再增加这就很纳闷了,思考呗,啥原因导致的,边查资料边动手试一下;登录线上服务器,jmap -heap 17,执行命令原创 2021-10-30 17:35:43 · 244 阅读 · 0 评论 -
线上服务器内存不断飙升定位
前言线上服务应用,4核8G的配置,在之前没有配置GC参数的时候,默认是jdk8的并发垃圾回收(JDK8中默认使用组合是: Parallel Scavenge GC 、ParallelOld GC),堆的分配参数也不太合理,这里就不细说了,导致重启后两三天,内存就超过80%,就会收到报警,不胜其烦。优化历程第一次优化:先优化jvm参数配置,可以参考如下网址,在上边填写好服务器信息和日志的路径后,就能生成JVM参数,可以一用;????:https://account.heapdump.cn/配置如原创 2021-09-26 22:51:43 · 1176 阅读 · 0 评论 -
gc日志简单分析
前言gc日志的分析还是可以看出系统的一些问题,吞吐量,gc暂停时间,年轻代和年老代的分配比例等,其中吞吐量和暂停时间是两个比较重要的指标,接下来,我们来简单演示下,随着jvm参数的变化,gc的一些情况。准备工作JMeter工具下载 http://jmeter.apache.org/download_jmeter.cgigc在线分析工具 https://gceasy.io/本地启动一个tomcat 可以访问一个demo,并找到catalina.sh,分别添加如下jvm参数,进行验证过程原创 2021-09-25 17:36:39 · 391 阅读 · 1 评论