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

文章探讨了Java在微服务和云原生环境中的挑战,如不适应快速启动和低资源需求。GraalVM作为解决方案出现,它解决了Java在容器化和性能方面的痛点,包括AOT编译和C2编译器的性能比较。同时,文章通过实战展示了如何使用GraalVM提升微服务的性能和效率。


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

课程内容:

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分钟,如下图:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值