云时代的JVM原理与实战--极客时间课程推荐/优惠
版权声明
本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
你将获得:
- 坐古览今:云时代 Java 的转变与发展趋势;
- 思维跃迁:深入剖析 30+ JVM 核心原理;
- 实战应用:JVM 编程避坑指南与最佳实践;
- 高手带路:20 年 Java 技术老兵的编程心法。
课程介绍
随着云计算和容器技术的发展,云原生应用已成为企业数字化转型的必选项。不光是一线的互联网大厂,就连传统的金融机构也都在积极地转型,拥抱云原生。
而 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 等问题,直到真正地解决它们。
课程目录
开篇词
- 开篇词|云时代来临,如何学好JVM应对未来的挑战?
第一章 JVM 概览
- 01|重识JVM:JVM的起源、特性与系统构成
- 02|挑战与趋势:云原生时代JVM的演进之路
- 03|工作台:JVM运行时数据区的内部机制是怎样的?
- 04|从JIT到AOT:JVM编译器的云原生演进之路
- 05|机器与语言:JVM 中的字节码
第二章 类与对象
- 06|类加载子系统 (上):类加载的流程与机制
- 07|类加载子系统(下):如何打造一个属于你的类加载器?
- 08|反射机制:给你一把打开JVM后门的钥匙
- 09|SPI机制:如何打造一个属于你的SPI程序?
- 10|对象模型:JVM对象的内部机制和存在方式是怎样的?
- 11|对象创建 :JVM中的对象是怎么生产出来的?
- 12|对象创建全家桶:JVM中对象创建的模式及最佳实践
- 13|对象回收(上):如何定位待回收的对象?
- 14|垃圾回收(下):揭秘垃圾回收中的算法
- 15|垃圾回收器:为什么G1被叫做GC中的王者?
- 16|垃圾回收器(下):面向未来的ZGC、Shenandoah
- 17|偷龙转凤:JVM中的扩展之道
第三章 线程与变量
- 18|被忽视的变量:带你全面认识JVM中的变量
- 19|云时代的线程模型:领略线程与虚拟线程的风采
- 20|JMM:如何打造一个线程安全的程序?
- 21|伪共享:如何用伪共享打造高并发、高性能的系统?
- 22|Volatile:深入解析JVM中的轻量级同步机制
- 23|一致性演进:Volatile与RAFT有何异同?
- 24|Synchronized:同步锁的原理及应用
- 25|锁家族的裂变:如何打造一个锁程序?
- 26|ThreadLocal(上):线程安全的另类实现思路
- 27|ThreadLocal(下):ThreadLocal家族成员及应用指南
- 28|线程池:不同场景下如何合理地选择线程池?
第四章 JVM 中的编程范式
- 29|编程范式:云原生时代函数式编程为何能占据主流?
- 30|函数式语法糖:如何使用Function 、Stream来编写函数式程序?
- 31|当装饰器遇上函数式:打造一个函数式装饰器模式的程序
- 32|当策略模式遇上函数式:打造一个函数式策略模式的程序
第五章 项目实战
- 33|环境:基于GraalVM的JVM云原生环境搭建
- 34|工具:学会使用从内存分析到性能测试等各种常用工具
- 35|实现:基于JDK 17、Spring Boot 3、Spring 6打造云原生Java应用
- 36|性能:百万级TPS系统的性能优化之道
结束语
- 结束语|学习是一生的旅程
- 结课测试|来赴一场满分之约吧!