前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >其实能把JVM讲这么清楚实属不易

其实能把JVM讲这么清楚实属不易

作者头像
沉默王二
发布2019-12-17 15:47:08
2640
发布2019-12-17 15:47:08
举报
文章被收录于专栏:沉默王二沉默王二

你有遇到过这些问题吗?

  • 运行着的线上系统突然卡死,系统无法访问,甚至直接OOM!
  • 新项目上线,对各种JVM参数设置一脸茫然,直接默认吧,然后就……
  • 想解决线上JVM GC问题,但却无从下手。
  • 每次面试之前都要重新背一遍JVM的一些原理概念性的东西,然而面试官却经常问你在实际项目中如何调优JVM参数,如何解决GC,OOM等问题,一脸懵圈!

很多人都是为了面试才接触Java虚拟机。但其实,熟悉JVM是为了更好的去理解Java,了解我们的程序。希望这篇文章能够真正的帮到大家,彻底解决掉JVM在面试时必问这个难题,看完这个内容保证面试时能对答如流。

JVM 分为 5 个部分,分别是:

1、类加载器(Class Loader)

2、运行时数据区(Runtime Data Area)

3、执行引擎(Execution Engine)

4、本地库接口(Native Interface)

5、本地方法库(Native Libraies)这其中最复杂的是运行时数据区,又可分为方法区、虚拟机栈、本地方法栈、堆、程序计数器,并且方法区和堆是线程共享的,虚拟机栈、本地方法栈、程序计数器是线程隔离的,JVM的结构如下图所示。

那JVM的学习路线到底是怎样的?

我们都知道,运行时数据区是 JVM 内存结构最重要的部分,也是难点部分,但是技术想要有所进阶、进大厂,必然绕不过JVM这个拦路虎。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 沉默王二 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档