jmeter负载测试,会讨论到持续稳定地增加系统的负载。 负载测试模型有两种:一种是用户并发模式的负载[a.阶梯加压线程组 bzm - Concurrency Thread Group],一种是吞吐量模式的负载[a.持续的增加RPS,jp@gc - Throughput Shaping Timer, ...
分类:
其他好文 时间:
2020-04-05 15:47:35
阅读次数:
105
1、发现无用对象 引用计数 被应用时,计数器++,通过计数器判断是否被引用(循环引用) 把引用关系作为一张图,搜索根。(建图或者建树) 2、回收无用对象 通用的垃圾分代回收机制 将对象分为年轻代,年老代,持久代 jvm划分为将堆划分为: Eden :新建对象先放至eden,满了就触发垃圾回收(min ...
分类:
编程语言 时间:
2020-04-05 11:50:13
阅读次数:
86
参数 描述 UseSerialGC 虚拟机运行在Client模式的默认值,打开此开关参数后, 使用Serial+Serial Old收集器组合进行垃圾收集。 UseParNewGC 打开此开关参数后,使用ParNew+Serial Old收集器组合进行垃圾收集。 UseConcMarkSweepGC ...
分类:
编程语言 时间:
2020-04-04 20:28:10
阅读次数:
89
1、访问地址:https://visualvm.github.io/pluginscenters.html,找到自己JDK版本对应的插件下载地址(我的JDK版本为1.7.0_67): 2、点击该链接进入如图界面,找到Visual GC插件,点击下载 3、打开Java VisualVM,工具——>插件 ...
分类:
编程语言 时间:
2020-04-04 15:01:45
阅读次数:
251
我们平时提及Minor GC、Young GC、Major GC,它们之间的关系是怎样的呢? 如下图1所示,一图胜千言,这是JDK8之前的,JDK8上没有最右边的Perm区。 图1 Minor/Young/Major GC的关系 此图来自国外的一篇博客,建议读者阅读原文,链接地址。 从图1来看Min ...
分类:
其他好文 时间:
2020-04-04 11:27:48
阅读次数:
204
Young GC的触发时机:Young GC其实一般就是在新生代的Eden区域满了之后就会触发,采用复制算法来回收新生代的垃圾。 Full GC的触发时机如下: (1)发生Young GC之前进行检查,如果“老年代可用的连续内存空间” < “新生代历次Young GC后升入老年代的对象总和的平均大小 ...
分类:
其他好文 时间:
2020-04-04 11:21:05
阅读次数:
746
从执行速度效率来说: String为字符串常量,一旦创建就不能修改,第一次创建一个String对象,实例化后有初始值;当第二次创建String对象后,再次赋值,表面上看是改变了第一个String对象的初始值,其实并不是,第二次创建后,第一个对象则被JVM的GC回收,因为String为常量,一旦创建则 ...
分类:
其他好文 时间:
2020-04-03 23:29:00
阅读次数:
79
Young GC的触发时机:Young GC其实一般就是在新生代的Eden区域满了之后就会触发,采用复制算法来回收新生代的垃圾。 Full GC的触发时机如下: (1)发生Young GC之前进行检查,如果“老年代可用的连续内存空间” < “新生代历次Young GC后升入老年代的对象总和的平均大小 ...
分类:
其他好文 时间:
2020-04-03 18:13:00
阅读次数:
441
一.Java堆从GC的角度去看,可以分为三个区域,分为是新生代,老年代,永久代(是方法区的实现,但是物理逻辑是和堆在一起的) 其中新生代占1/3的堆空间,老年代占2/3的堆空间,永久代占得很少,就不进行划分了,他也占了,但是很少很少,新生代占的1/3又分为Eden区(占比8/10),Servivor ...
分类:
其他好文 时间:
2020-04-02 15:54:22
阅读次数:
86
go的调度 与 go 的GC 调度 首先golang的goroutine占用的资源非常小,默认size是2k,goroutine调度的切换也不用到内核层去完成,代价很低,所以go可以创建成千上万个goroutine。对于操作系统而言,go程序是一个用户层程序,对goroutine是不可见的,所以go ...
分类:
其他好文 时间:
2020-04-01 22:12:46
阅读次数:
103