Skip to content

云时代的JVM原理与实战 ​

随着云计算和容器技术的发展,云原生应用已成为企业数字化转型的必选项。不光是一线的互联网大厂,就连传统的金融机构也都在积极地转型,拥抱云原生。

而 Java 作为老牌语言的代表也选择了顺应时代的潮流,持续在 JVM 层面进行优化,与容器化、微服务架构融合得更加紧密,引入更多新特性来更好地适应云原生的环境。比如:

  • AOT 编译器和 JIT 编译器相结合,提升程序运行性能。
  • 优化 JVM 的内存管理和垃圾回收机制,提高 Java 应用的性能和稳定性。
  • JVM 的镜像化和容器化,以及对容器化环境的适配。
  • 持续加强对函数式的支持。
  • ……

这些变化背后的原理是怎样的,我们又该如何更好地把这些新特性应用到我们自己的程序当中?为此,我们邀请了京东资深架构师康杨老师来开设这门课程,他将结合自己十余年来 JVM 的实战经验以及云原生时代他对 Java 变化趋势的思考,一层层地拨开迷雾,让你通原理、晓应用,最终绘制出自己的 JVM 知识框架。

课程设计 ​

第一章 JVM 概览

为你介绍 JVM 的由来,它的系统构成,以及当前云时代 JVM 面临的挑战及应对之法。不仅是为了让你了解 JVM 是什么,更是为了让你看清它未来发展的趋势,提前做好准备。

第二章 类与对象

帮你理清楚 JVM 是如何支持 Java 语言的面向对象编程的。了解 JVM 的对象模型和各种编译技术,JVM 从类加载到空间分配以及最后回收的全流程,以及 JVM 那些为了应对云时代的挑战做出的优化。

第三章 线程与变量

这部分你将深入 Volatile 底层的实现原理,并借助 Volatile 写出最优雅的单例模式,了解 putIntVolatile 与 putOrderedInt 的区别。深入 JUC 源码,理解它是如何使用这种优化方式的,感受 JUC 之父 Doug Lea 对性能的极致要求。学会更优雅地使用线程池,写出更高效的分布式程序,了解最新的虚拟线程技术,深入理解 JVM 底层原理对上层应用的支持。

第四章 JVM 中的编程范式

这部分你会学到 Decorator 等设计模式的使用以及函数式编程的特点,还会回归对编程本质的思考,看清设计模式与函数式编程的理论源泉,也就是人类对系统复杂度的思考和探索。

第五章 项目实战

动手实践打造你的第一个 AOT 编译的 GraalVM 应用,感受 JVM 的魅力。利用前面学到的知识点,体验如何全方位地提升系统性能,直面生产中非常经典的 FULLGC、OOM 等问题,直到真正地解决它们。

最近更新