水木社区手机版
首页
|版面-Java技术(Java)|
新版wap站已上线
返回
下页
|
尾页
|
1/2
|
转到
主题:关于Spring native和GraalVM体验
楼主
|
oldwatch
|
2022-09-13 17:08:16
|
只看此ID
1.除了需要@SerializationHint修饰一切pojo
(spring说下一个大版本就能省掉这步)
spring native体验和spring boot几无区别
2.项目调试可以用常规的java -jar模式运行,启动也明显快于普通jre,还支持profile
但是构建时间明显增加
3.mvn -Pnative package会触发本地化构建,直接生成脱离jre的可执行代码
构建开销非常大,尤其内存占用峰值7~8个G,不要随便在CI/CD环境跑……
不支持跨平台构建,而且紧密绑定glib版本号
不支持profile参数,需要预先确保目标环境就是默认环境
需要graalvm中安装了native-image组件
4.因为对glib版本有要求,所以即使跨发行版构建都可能无法在目标环境运行
如果不是按照spring最佳实践直接容器化部署的话
可以考虑用docker做个构建工具,
基于目标平台的image创建环境
然后把代码文件夹bind进去跑构建
一个完整的webflux+r2dbc应用,在2core2G的虚机上跑的毫无压力
pmap显示内存占用100M
--
FROM 116.233.92.*
1楼
|
zxkane
|
2022-09-14 08:44:20
|
只看此ID
赞
【 在 oldwatch 的大作中提到: 】
:
: 1.除了需要@SerializationHint修饰一切pojo
: (spring说下一个大版本就能省掉这步)
: spring native体验和spring boot几无区别
:
#发自zSMTH@GM1910
--
FROM 124.64.18.*
2楼
|
hothail
|
2022-09-14 13:34:14
|
只看此ID
赞
下一个大版本,是指 springboot3/spring6 么?还是说 springboot4
--
FROM 111.206.87.*
3楼
|
oldwatch
|
2022-09-14 13:53:29
|
只看此ID
https://github.com/spring-projects-experimental/spring-native/issues/1152
sdeleuze commented on Mar 17
On Spring Native side no, but we are going likely to explore this in Spring Framework 6 and Spring Boot 3.
【 在 hothail 的大作中提到: 】
: 赞
: 下一个大版本,是指 springboot3/spring6 么?还是说 springboot4
--
FROM 116.233.92.*
4楼
|
taniel
|
2022-09-14 14:54:51
|
只看此ID
你build快么?我感觉一个hello world就得好几分钟简直不能忍
--
FROM 111.206.87.*
5楼
|
oldwatch
|
2022-09-14 15:02:37
|
只看此ID
不开native标识的mvn package还行吧,
记得skipTest,否则会原地把spring boot启动一趟
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 15.771 s
刚才跑了一下
【 在 taniel 的大作中提到: 】
: 你build快么?我感觉一个hello world就得好几分钟简直不能忍
--
FROM 116.233.92.*
6楼
|
taniel
|
2022-09-14 16:40:58
|
只看此ID
不开native不是等于没build成机器码么还是java那套
【 在 oldwatch 的大作中提到: 】
: 不开native标识的mvn package还行吧,
: 记得skipTest,否则会原地把spring boot启动一趟
: [INFO] BUILD SUCCESS
: ...................
--
FROM 111.206.87.*
7楼
|
oldwatch
|
2022-09-14 16:59:18
|
只看此ID
都是被java字节码和jit惯坏了
编译从来就是重的要死的活
【 在 taniel 的大作中提到: 】
: 不开native不是等于没build成机器码么还是java那套
--
FROM 116.233.92.*
8楼
|
taniel
|
2022-09-14 19:51:36
|
只看此ID
那倒是
【 在 oldwatch 的大作中提到: 】
: 都是被java字节码和jit惯坏了
: 编译从来就是重的要死的活
:
--
修改:taniel FROM 111.206.87.*
FROM 111.206.87.*
9楼
|
taniel
|
2022-09-14 19:53:31
|
只看此ID
不过他们这套工具链应该还能优化吧,预编译啥的都没有来着
--
FROM 111.206.87.*
下页
|
尾页
|
1/2
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版