提醒大家复习时,只看标题进行回想并尝试回答,然后再看内容。

1、前文回顾

前5周分析了JVM核心原理、出现GC的问题情形。

2、基于JVM运行的系统最怕什么?

STW 造成的卡顿问题

3、年轻代gc到底多久一次对系统影响不大?

多久一次需要根据业务来定。年轻代gc对系统影响大不大?相对于FullGC,对系统影响是不大的。因为存活对象少,意味着追踪和复制的就少

4、什么时候新生代gc对系统影响很大?

系统部署部署在大内存机器上,给你的应用分配了几十个G,同时负载很高情况下(比如每秒几万请求),这时积压的请求多,大量存活,导致回收时间长

5、如何解决大内存机器的新生代GC过慢的问题?

G1垃圾回收器,G1天生就适合这种大内存机器的JVM运行,可以完美解决大内存垃圾回收时间过长的问题。

6、要命的频繁老年代gc问题

三个进入老年代的条件:1、年龄大 2、动态年龄判断 3、Survivor放不下 重点关注2和3。所以要按照之前说的,估算内存模型,合理分配内存Eden,Survivor区(SurvivorRatio参数)

7、JVM性能优化到底在优化什么?

总的原则:合理配置分配内存,让短命对象在新生代就被回收,让长期存活的早点进入老年代(别再新生代复制来复制去)

本文是《从 0 开始带你成为JVM实战高手》内容总结,版权问题,特此声明。想学习老师专栏的同学可以扫描二维码:

购买成功后找我返现10元

036、JVM实战总结:糟糕!运行着的线上系统突然卡死无法访问,万恶的JVM GC!相关推荐

  1. 031、jvm实战总结:动手实验:线上系统部署如果采用G1垃圾回收器,应该如何设置参数?

     1.前文回顾 1.G1中有新 .老.大三种Region 2.新生代回收条件:新生代Eden区满的时候 3.新生代GC仍然采用复制算法 4.控制停顿时间,对Region进行挑选回收 5.进入老年的条件 ...

  2. 024、JVM实战总结:动手实验:线上部署系统时,如何设置垃圾回收相关参数?

    1.前文回顾 CMS采用了4个阶段来垃圾回收:初始标记(STW).并发标记.重新标记(STW).并发清理 2.并发回收垃圾导致CPU资源紧张 并发标记和并发清理两个最耗时的阶段,垃圾回收线程和系统工作 ...

  3. 程序员搞事!动手实战优化自己公司线上系统JVM,结果。。。

    Java性能调优都是老生常谈的问题,特别当"糙快猛"的开发模式大行其道时,随着系统访问量的增加.代码的臃肿,各种性能问题便会层出不穷. 比如,下面这些典型的性能问题,你肯定或多或少 ...

  4. jvm性能调优实战 - 30使用jmap和jhat摸清线上系统的对象分布

    文章目录 Pre 使用jmap了解系统运行时的内存区域 jmap -heap PID 使用jmap了解系统运行时的对象分布 jmap -histo PID 使用jmap生成堆内存转储快照 使用jhat ...

  5. 阿里Java诊断工具 arthas - 监测线上系统的运行信息、排查程序运行缓慢等问题

    一.arthas 上篇文章我们讲解了使用arthas在线上环境排查定位内存占用过大.cpu使用率过高等问题,本篇文章继续使用arthas监测线上系统的运行信息,以及排查程序运行缓慢等问题. 下面是上篇 ...

  6. 线上系统的JVM内存是否设置的越大越好?

    "线上系统的JVM内存是否设置的越大越好?"乍一听到这个问题,我第一个反应就是"NO",但是,具体为什么不行,又说不出什么所以然来. 其实,说一个东西不行,我们 ...

  7. 050、JVM实战总结:动手实验:使用 jstat 摸清线上系统的JVM运行状况

    jstat详细信息,参考:jstat - Java Virtual Machine Statistics Monitoring Tool 1.前文回顾 对象优先在Eden区分配,Young GC的触发 ...

  8. jvm性能调优实战 -60 线上系统的JVM参数优化、GC问题定位排查、OOM分析解决

    文章目录 总结 总结 第一个是JVM运行我们写好的系统最根本的工作原理,包括: 内存各个部分的划分 代码在执行的过程中,各个内存区域是如何配合协调工作的 对象是如何分配的 GC如何触发 GC执行的原理 ...

  9. jvm性能调优实战 - 32一个10万并发的BI系统,如何定位和解决频繁Young GC问题?

    文章目录 Pre 模拟代码的JVM参数设置 示例Code 如何在windows上执行命令? 通过jstat观察程序的运行状态 Pre jvm性能调优实战 - 26一个每秒10万并发的系统如何频繁发生Y ...

最新文章

  1. 关于滑动条滚动 scroll兼容
  2. Scrapy框架的学习(2.scrapy入门,简单爬取页面,并使用管道(pipelines)保存数据)
  3. ASP.NET Core跨域设置
  4. SQL2005结合ROW_NUMBER()高效分页存储过程
  5. openeim 成片的蝴蝶兰盛开在绿树之间
  6. MSPA安装与生态源地提取
  7. 第二:Pytest执行用例规则和Pycharm运行的三种姿态
  8. Bailian2765 POJ NOI0113-03 八进制小数【进制】
  9. js数组获取index_想自学JS吗?想提升JS底层原理吗?76张脑图带你彻底搞懂原生JS...
  10. mysql 查询一个数据库里面有多少张数据表
  11. Oracle笔记整理
  12. python画图代码大全-简单画图 - python代码库 - 云代码
  13. 金士顿U盘被写保护的解决方法(量产)
  14. 灵飞经4 西城八部 第二十章 倒行逆施(五)
  15. 【舆情分析(5)】 情感倾向分析之鲁迅《祝福》里对祥林嫂(特定人物)的情感倾向
  16. oracle 12c创建归档,oracle 12c 数据归档 即Using In-Database Archiving feature
  17. 「L2TP」- Layer 2 Tunneling Protocol @20210210
  18. 赵小楼《天道》《遥远的救世主》深度解析(47)为什么要给韩楚风的司机小赵点赞?芮小丹是怎么做到“反客为主、打破阶层”的?
  19. 二零一九第二天 文/一个会写诗的程序员
  20. STM32、NBIOT、Lora模块烧写方法-Hex文件烧录步骤详解-新大陆物联网设备-NEWLab开发板

热门文章

  1. 年夜饭之 -- 洋葱炒墨鱼仔
  2. 计算机网络中流的定义,计算机网络的基本概念-Read.PPT
  3. 形成性考核(计算机应用基础) 答案,2019年最新电大《计算机应用基础(Win7)》形成性考核册及答案.pdf...
  4. Linux中的Docker容器的数据卷
  5. 靠右对其_中重型货车靠右行驶新规实施一周
  6. vue动态发布到线上_Vue 2.6 发布了
  7. 2021-08-12
  8. php ajax跳转,ajax接口的php文件如何实现跳转
  9. 软件开发工程师应该具备哪些证书_智能展厅设计应该具备哪些特点?
  10. python百题百练 二级题目_计算机二级选择题(公共基础新大纲)