当前位置: 首页 > news >正文

永久网站域名注册网站短期技能培训学校

永久网站域名注册,网站短期技能培训学校,架设网站 软件,wordpress tag 别名JVM垃圾回收篇-垃圾回收器 串行垃圾回收器 Serial串行#xff1a;为单线程环境设计且只使用一个线程进行垃圾回收#xff0c;会暂停所有用户的线程#xff0c;所以不适合服务器环境#xff0c;适用于堆内存小#xff0c;适合于个人电脑 开启串行垃圾回收 -XX:UseSeria…JVM垃圾回收篇-垃圾回收器 串行垃圾回收器 Serial串行为单线程环境设计且只使用一个线程进行垃圾回收会暂停所有用户的线程所以不适合服务器环境适用于堆内存小适合于个人电脑 开启串行垃圾回收 -XX:UseSerialGC Serial SerialOldSerial:开启新生代串行垃圾回收采用复制算法SerialOld:开启老年代串行垃圾回收采用标记整理算法 首先让用户线程到达一个安全点[垃圾回收期间涉及内存地址改变]所有用户线程停止运行垃圾回收线程对垃圾进行回收等待垃圾回收完成后用户线程恢复运行 吞吐量优先的垃圾回收器 多线程 堆内存较大需要多核cpu支持否则就是多个线程争抢同一个cpu的时间片段 单位时间内stw的时间最短 0.2 0.20.4 一小时内总的stw时间最短单次较长开启吞吐量优先的垃圾回收器 -XX:UseParallelGC ~ -XX:UseParallelOldGC //开启一个另一个也会自动开启jdk1.8默认开启UseParallelGC:开启新生代吞吐量优先垃圾回收,采用复制算法 UseParallelOldGC:开启老年代吞吐量优先垃圾回收采用标记整理算法 -XX:ParallelGCThreadsn 设置垃圾回收线程数如果不设置默认垃圾回收线程数与CPU核心数保持一致 -XX:UseAdaptiveSizePolicy 根据GC的情况自动计算计算 Eden、From 和 To 区的大小,晋升阈值也会受到影响jdk1.8默认开启 -XX:GCTimeRatioratio GC时间占比ratio默认为99,计算公式:gc时间占比1/(1ratio),即默认占比为1/100相当于100分种垃圾回收时间不大于1分钟如果大于1分钟会自动调整堆内存大小加大堆内存 heap size - gc count---XX:MaxGCPauseMillisms 垃圾回收最大暂停时间 默认200ms,当堆内存增大时每次gc所需时间也会增大需要扫描堆中的垃圾扫描和回收时间都会增大所以需要保障最大暂停时间意味着heap减小显然这与GCTimeRatio相冲突 响应时间优先的垃圾回收器 多线程 堆内存较大多核cpu场景 尽可能让单次stw的时间最短 0.1 0.1 0.1 0.1 0.1 0.5 单次时间最短 总时间较长开启响应时间优先的垃圾回收器 -XX:UseConcMarkSweepGC ~ -XX:UseParNewGC ~ SerialOldUseConcMarkSweepGC(CMS)基于标记清除的垃圾回收器并且是并发的工作在老年代UseParNewGC:工作在新生代的垃圾回收器采用复制算法当CMS垃圾回收器并发失败concurrent mode fialure时会退化为SerialOld垃圾回收器-XX:ParallelGCThreadsn 垃圾回收并行线程数 ~ -XX:ConcGCThreadsthreads (垃圾回收并发线程数)并发线程数一般设置为并行线程数的1/4-XX:CMSInitiatingOccupancyFractionpercent 执行cms垃圾回收时的内存占比假设percent80即老年代内存占用到达80%就触发一次内存清理(由于是并发清理清理期间会产生新的垃圾[浮动垃圾]需要预留空间给这部分垃圾占用)-XX:CMSScavengeBeforeRemark 在 CMS GC 的重新标记 阶段开始前先使用ParNewGC进行一次 Young GC有利于减少 Young Gen 对 Old Gen 的无效引用降低 CMS-remark 阶段的时间开销 存在问题 CMS垃圾回收器采用的是标记清除算法所以会产生内存碎片CMS的GC耗时80%都在remark阶段remark阶段停顿时间会很长concurrent mode failure:这个异常发生在cms正在回收的时候。执行CMS GC的过程中同时业务线程也在运行当年轻代空间满了执行ygc时需要将存活的对象放入到老年代而此时老年代空间不足这时CMS还没有机会回收老年代产生的或者在做Minor GC的时候新生代救助空间放不下需要放入老年代而老年代也放不下而产生的promotion failed:在进行Minor GC时Survivor空间不足对象只能放入老年代而此时老年代也放不下造成的多数是由于老年代有足够的空闲空间但是由于碎片较多新生代要转移到老年带的对象比较大,找不到一段连续区域存放这个对象导致的,发生promotion failed的下一步就会产生concurrent mode fialure将垃圾回收器退化为SerialOld,此时吞吐量下降严重 CMS垃圾回收器的四个阶段** 阶段一初始标记:标记老年代中所有的根对象包括根对象直接引用的对象以及被年轻代中所有存活的对象所引用的老年代对象只是标记一下GC Roots能直接关联到的对象速度很快会触发stw 阶段二并发标记:从初始标记阶段标记的对象开始找出所有存活的对象 因为是并发运行的在运行期间会发生新生代的对象晋升到老年代、或者是直接在老年代分配对象、或者更新老年代对象的引用关系等等对于这些对象都是需要进行重新标记的否则有些对象就会被遗漏发生漏标的情况。为了提高重新标记的效率该阶段会把上述对象所在的Card标识为Dirty后续只需扫描这些Dirty Card的对象避免扫描整个老年代 并发标记阶段只负责将引用发生改变的Card标记为Dirty状态不负责处理 阶段三重新标记:为了修正并发标记期间因用户程序继续运作而导致标记产生变动的那一部分对象的标记记录这个阶段的停顿时间一般会比初始标记阶段稍长一些但远比并发标记的时间短。此阶段也需要stw 阶段四并发清除:这个阶段主要是清除那些没有标记的对象并且回收空间
http://www.sadfv.cn/news/158182/

相关文章:

  • 电子商务网官方网站淘宝网页版电脑版登录
  • 商城网站模板html沈阳信息港
  • 长沙城乡建设网站网站域名缴费
  • 合肥网站制作培训wordpress图片显示在文章
  • 在国外的网站做推广北海建设厅网站
  • 做门户网站的营业范围知名网站设计服务商
  • 怎样做网站开发wordpress 页面属性模板
  • 做网站服务网站风格主要包括哪些
  • nginx 网站开发网站的ftp在哪里可以查到
  • 社区微网站建设方案ppt做网站需要什么技术员
  • 安徽网站关键词优化温州商城网站建设
  • 惠州做学校网站找生产建筑模板的厂家
  • 唐山公司网站建设 中企动力唐山做网站总结与体会
  • 公司网站推广计划书怎么做郑州做网站哪里好
  • 门户网站排行榜简单的旅游网站代码
  • 福田我要做网站优化比较好ps网站子页怎么做
  • 网站建设易网宣网页建站分为几个类型
  • 网站备案平台asp企业网站cms
  • 购物网站多少钱工作总结个人
  • 天津实体店网站建设网站html静态化解决方案
  • 长宁区企业网站建设zcms内容管理系统
  • 自己做网站卖东西犯法吗网站开发过滤器作用
  • 网站建设需要啥专门做名片的网站
  • wordpress网站音乐放不全做外贸的网站哪些是最好的
  • 建工厂网站的公司torrentkitty磁力天堂
  • 黄江镇网站仿做网站开发一般用哪个浏览器
  • 无锡网站建设推广太原在线网站建设
  • 天津南开区网站建设公司建筑资料下载网
  • 成都制作网站的公司简介做网站什么什么
  • 做商城类的网站需要做些什么中国建设银行网站开通短信