9. GraalVM.云原生时代的Java虚拟机

JVM性能调优

  • 1. GraalVM诞生的背景
    • 1.1 Java在微服务/云原生时代的困境
      • 1.1.1 事实
      • 1.1.2 矛盾

本文是按照自己的理解进行笔记总结,如有不正确的地方,还望大佬多多指点纠正,勿喷。

课程内容:

1、Java在云原生时代的困境及解决方案

2、GraalIVM安装及入门

3、使用GraalVM实战演练AOT

4、惊现C2编译器BUG

5、GraalVM编译器性能对比实战

6、GraalVM与Spring6

1. GraalVM诞生的背景

1.1 Java在微服务/云原生时代的困境

1.1.1 事实

Java总体上是面向大规模、长时间的服务端应用而设计的。

严(luo)谨(suo)的语法利于约束所有人写出较一致的代码,利于软件规模的提升;

但是像即时编译器(JT)、性能优化、垃圾回收等有代表性的特征都是面向程序长时间运行设计的,需要一段时间来达到最佳性能,才能享受硬件规模提升带来的红利。

1.1.2 矛盾

在微服务的背景下,提倡服务围绕业务能力构建,不再追求实现上的严谨一致;

1、单个微服务就不再需要再面对数十、数百GB乃至TB的内存;

2、有了高可用的服务集群,也无须追求单个服务要7×24小时不可间断地运行,它们随时可以中断和更新。

所以微服务对应用的容器化(Docker)亲和度〈包容量、内存消耗等)、启动速度、达到最高性能的时间等方面提出了新的要求,这些恰恰是Java的弱项。

比如: 现在启动一个微服务项目(Docker运行6个子服务),动不动就1分钟,如下图:

你可能感兴趣的:(JVM性能调优,java,云原生,开发语言)