温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
下边啊,咱们看一下这个g first垃圾回收器它的一个使用场景,那这里边呢,也是从这个实际开发的这个经验上来讲的,诶大家呢,需要清楚我们在什么样的这个场景下呢,使用这个g force呢,能够更好的发挥它的性能啊,是这样子的,那首当其冲呢,我们就提到这个g force呢,它主要呢是应用在这个服务器端啊,针对这个服务端来讲的,呃,当我们具备这种大内存多处理器的这个机器的时候呢,这个g force呢,就能更好的发挥它的一个性能啊,就是个小庙呢,装不了这个大佛是吧。哎,这样,那么最主要的一个应用场景是什么呢?就是当我们需要这个低延迟啊,一提到低延迟的话呢,我们就会想到g first和CMS,当然我们这个堆空间也比较大,哎这种场景下呢,我们就可以考虑叫诶用g first,比如说呢,这个堆的大小呢,在6GB或者更大的空间,那可预测的这个暂停时间呢,是低于0.5秒的。哎,我们就可以考虑使用它,因为我们这个g first呢,它通常呢,使用的是清理一部分,它有一个这个按照一个价值的一个排序,是清理一部分这个region啊,这种增量式的这种清理保证呢,每次这个JC时间啊,比如说95%以上的概率呢,都不会超过你给定的这个停顿时间的值啊OK。
01:13
说接下来呢,我们又提到说这个CMS的出现呢,我们诶还可以考虑去替换我们原有的这个CMS,嗯,J的一个出现,替换原有的我们这个CMS的这个场景,因为呢,这个这一之前呢,我们说CMS呢,主要来体现这叫低延迟了,在什么样场景下我们可以去替换呢?呃,这里边提到如果呢,你这个对空间啊,发现它超过50%呢,都是活跃的。超过50%都是活跃的,然后这个对象分配的频率或者年代提升频率呢,变化非常大,乃至于说呢,这个停顿时间呢,也过长,在这些场景下呢,我们用这份去替换CMS呢,这个性能呢,就能够表现的更好。哎,可以表现的更好,哎这个大家呢,关注一下这个问题。哎,关注一下这个问题,那上面这块呢,主要就提到我们一些开发中的一些经验,那这呢,其实也是我们说一些调优的这个手段,对吧?我们下边呢,不是要给大家讲这个GM性能调优与监控嘛,那么调优方面呢,我们说在内存分配上,我们更合理的一个这个参数的一些设置,那么关于垃圾回收方面呢,我们更优秀的或者更适合的一些垃圾回收器的一些选择,那这呢,也是能够提高我们整体系统的一个性能啊这呢就是我们提到这样的一些点是吧,什么时候用这个G1,什么时候用CMS,什么时候用zero,哎,这个大家要注意啊。
02:23
下面呢,针对我们这个j for又提到一个亮点,就说呢,针对于其他这个垃圾回收器呢,咱们通常呢,使用专门的是不是垃圾回收的线程啊,诶专门垃圾回收线程的话呢,我们说这个优先级还比较低,那对于这个j first来讲的话呢,它可以采用叫应用线程来承担后台运行的这个JC工作,诶这个呢是一个亮点。就是相当于可以协助我们的垃圾回收线程呢,共同的来处理这个垃圾回收,加速垃圾回收的一个过程,那这时候呢,实际上也能够,嗯,就是加速回收的过程,那如果你要是一个并行驶性的话呢,这个暂停时间呢,相当于也能够帮你缩短一下是吧?哎这样一个场景,当然了,你要说用应用程序的这个线程的话呢,可能会影响到我们这个吞吐量的问题,对吧?哎,这就看他的一个动态的分配的过程了。
03:06
好,这呢,就是我们说的这个主要的使用场景,诶这块呢,大家把这个呢,诶多关注一下啊。
我来说两句