JVM复习笔记

--慢慢来

 

垃圾收集:

young generation-------serial, parnew, parallel scavenge
tenured gencration---------CMS, Serial old(MSC), parallel old.

parallel scavenge收集器是一个新生代收集器,他也是使用服饰算法的收集器,又是并行的多线程收集器
看上去和parnew差不多,有什么特别的呢?
--parallel scavenge收集器的特点是它的关注点与其他收集器不同,CMS等收集器的关注点是
尽可能地缩短垃圾收集时用户线程的停顿时间,而parallel scavenge收集器的目的标准则时
达到一个可控制的吞吐量。

自适应调节策略是parallel scavenge收集器与parnew收集器的一个重要区别。
参数-- -XX:+UseAdaptiveSizePolicy MaxGCPauseMillis GCTimeTatio

 

CMS(Concurrent Mark Sweep)收集器是一种以获取最短回收停顿时间为目标的收集器
这类应用尤其重视服务的响应速度,希望系统停顿时间最短,以给用户带来较好的体验。
cms收集器无法处理浮动垃圾(Floating Garbage)可能出现“Concurrent mode failure”
失败而导致另一次Full GC的产生。
jdk1.5默认设置下,CMS收集器当老年代68%的空间后就会被激活。

G1(Garbage-First)

是一款面向服务端应用的垃圾收集器。未来可以替换掉jdk1.5中发布的CMS收集器

JVM垃圾收集常用参数

  参  数 描  述
 UseSerialGC 虚拟机运行在Client 模式下的默认值,打开此开关后,使用Serial +
Serial Old 的收集器组合进行内存回收
 UseParNewGC 打开此开关后,使用ParNew + Serial Old 的收集器组合进行内存回收
 UseConcMarkSweepGC 打开此开关后,使用ParNew + CMS + Serial Old 的收集器组合进行内存
回收。Serial Old 收集器将作为CMS 收集器出现Concurrent Mode Failure失败后的后备收集器使用
 UseParallelGC 虚拟机运行在Server 模式下的默认值,打开此开关后,使用Parallel
Scavenge + Serial Old(PS MarkSweep)的收集器组合进行内存回收
 UseParallelOldGC 打开此开关后,使用Parallel Scavenge + Parallel Old 的收集器组合进行内存回收
 SurvivorRatio 新生代中Eden 区域与Survivor 区域的容量比值, 默认为8, 代表
Eden :Survivor=8∶1
 PretenureSizeThreshold 直接晋升到老年代的对象大小,设置这个参数后,大于这个参数的对象
将直接在老年代分配
 MaxTenuringThreshold 晋升到老年代的对象年龄。每个对象在坚持过一次Minor GC 之后,年
龄就加1,当超过这个参数值时就进入老年代
 UseAdaptiveSizePolicy 动态调整Java 堆中各个区域的大小以及进入老年代的年龄
 HandlePromotionFailure 是否允许分配担保失败,即老年代的剩余空间不足以应付新生代的整个
Eden 和Survivor 区的所有对象都存活的极端情况
 ParallelGCThreads 设置并行GC 时进行内存回收的线程数
 GCTimeRatio GC 时间占总时间的比率,默认值为99,即允许1% 的GC 时间。仅在
使用Parallel Scavenge 收集器时生效
 MaxGCPauseMillis 设置GC 的最大停顿时间。仅在使用Parallel Scavenge 收集器时生效
 CMSInitiatingOccupancyFraction 设置CMS 收集器在老年代空间被使用多少后触发垃圾收集。默认值为
68%,仅在使用CMS 收集器时生效
 UseCMSCompactAtFullCollection 设置CMS 收集器在完成垃圾收集后是否要进行一次内存碎片整理。仅
在使用CMS 收集器时生效
 CMSFullGCsBeforeCompaction 设置CMS 收集器在进行若干次垃圾收集后再启动一次内存碎片整理。
仅在使用CMS 收集器时生效

转载于:https://www.cnblogs.com/chywx/p/6813507.html

基于Spring Boot搭建的一个多功能在线学习系统的实现细节。系统分为管理员和用户两个主要模块。管理员负责视频、文件和文章资料的管理以及系统运营维护;用户则可以进行视频播放、资料下载、参与学习论坛并享受个性化学习服务。文中重点探讨了文件下载的安全性和性能优化(如使用Resource对象避免内存溢出),积分排行榜的高效实现(采用Redis Sorted Set结构),敏感词过滤机制(利用DFA算法构建内存过滤树)以及视频播放的浏览器兼容性解决方案(通过FFmpeg调整MOOV原子位置)。此外,还提到了权限管理方面自定义动态加载器的应用,提高了系统的灵活性和易用性。 适合人群:对Spring Boot有一定了解,希望深入理解其实际应用的技术人员,尤其是从事在线教育平台开发的相关从业者。 使用场景及目标:适用于需要快速搭建稳定高效的在线学习平台的企业或团队。目标在于提供一套完整的解决方案,涵盖从资源管理到用户体验优化等多个方面,帮助开发者更好地理解和掌握Spring Boot框架的实际运用技巧。 其他说明:文中不仅提供了具体的代码示例和技术思路,还分享了许多实践经验教训,对于提高项目质量有着重要的指导意义。同时强调了安全性、性能优化等方面的重要性,确保系统能够应对大规模用户的并发访问需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值