Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GraalVM-Examples

尝试基于graalvm实现将springboot-helloworld项目编译为linux原生可执行文件并部署。

BR build CD starting size MEM
graalvm 2 threads  5.86/7.75GB 8m34s 11m14s 0.038s 83.1M 26.6M
1m 2.88s 19.2M 132.7M

优点

启动时间极快;内存占用低;ubuntu镜像更小;

缺点

编译速度太慢,其中Compiling methods最耗时;而基本CD最耗时操作为复制编译结果而非编译本身。也许是CD服务器只有2线程的资源限制。spring IO大会演示视频使用32线程+32GB,构建耗时仅46.5s(过分了);
编译时内存占用过大;
无法确定对使用反射/动态加载/动态代理等第三方库的支持情况;
一旦程序无法运行,较难排查问题;

总结

拆分的微服务如果不包含过多第三方依赖本身并不大,十几分钟的编译时间换仅快几秒的启动速度,是否值得?
为了使用graalvm而修改代码/配置/依赖/版本等以支持graalvm的兼容性,是否值得?
启动慢,内存占用大的是数据库;
感觉graalvm更适合:技术架构成熟,更新不频繁,希望降低内存资源占用的服务。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages