写点什么

第九周作业

用户头像
solike
关注
发布于: 2020 年 11 月 22 日

简述 JVM 垃圾回收原理

使用可达性分析算法确定垃圾对象,即通过遍历 GC Roots 确定可达对象,其他对象即为垃圾对象,需要进行回收,主要通过三种回收算法进行垃圾回收,即标记清除算法,标记整理,标记复制算法,后两者都能解决清除算法的碎片问题,复制算法相比整理算法需要更多的空间成本。JVM 垃圾回收主要采用分代回收的策略,对于年轻代区,对象存活时间较短,采用复制算法开销小,只需要复制少量存活对象即可,(一次 GC 过程)Eden(From)区存活对象复制到 To 区->Eden(From)区垃圾对象回收->To 区存活迁移到 From 区

存活对象年龄达到晋升的阀值时会迁移到老年代区,该区使用清除算法或整理算法,因为大部分对象不需要回收,只需要回收少量对象。为了提高垃圾回收的效率,更低的延迟,更高的吞吐量,垃圾回收器发展历程:串行回收器-》并行回收器-》并发回收器(CMS)-》G1(优先回收垃圾多的,可控制延迟时间,通过逻辑分块,一次 GC 回收一块区域的垃圾对象)。


秒杀系统的挑战及解决方案:

商品列表及商品详情访问压力大,(需要做页面静态化,并进行 CDN 加速)

秒杀商品的数量限制了只有少量用户能够购买成功,主要通过多级计数器的阀门限制只有商品数量的用户下单成功。


用户头像

solike

关注

还未添加个人签名 2020.02.17 加入

还未添加个人简介

评论

发布
暂无评论
第九周作业