graalvm 拯救生命,速速入手

标题很夸张,graalvm怎么就拯救生命了?把一个启动5-6秒的项目加速到3秒启动,不就是在拯救生命,拯救发际线吗?

我在上一篇博客"SpringBoot3.0工程建立"末尾启动了工程,其启动时间为6.2s,多次尝试也在5.5s以上。但是graalvm 可以使启动时间降低为3秒。

graalvm官网下载

官网下载链接为 https://www.graalvm.org/downloads/

其会引导你跳转到Github下载https://github.com/graalvm/graalvm-jdk-downloader 但是网络情况不佳的时候是上不了的。

当前最新版为GraalVM Community 22.3,使用官网首页下载命令进行下载,会获得jdk 17版本的graalvm。当然,仍然需要能够连接到github。其包大小在284M,比一般JVM大许多,毕竟支持那么多语言运行。

如若下载进不去,需要安装包,可添加wx: wanglhup 备注 csdn

bash <(curl -sL https://get.graalvm.org/jdk)

如果手动下载的包,使用tar -xzvf xxx.tar,gz 进行解压即可。使用命令的会自动解压,并尝试配置你的环境变量,JAVA_HOME。

进入其目录,应如下:

dark@dark:~/.jdks/gvm/graalvm-ce-java17-22.3.0$ ls -al
总用量 448
drwxrwxr-x 10 dark dark   4096 1220 00:41 .
drwxr-xr-x  3 dark dark   4096 1220 00:41 ..
drwxrwxr-x  2 dark dark   4096 1220 00:41 bin
drwxrwxr-x  5 dark dark   4096 1220 00:41 conf
-rw-rw-r--  1 dark dark   1611 1020 18:42 GRAALVM-README.md
drwxrwxr-x  3 dark dark   4096 1220 00:41 include
drwxrwxr-x  2 dark dark   4096 1220 00:41 jmods
drwxrwxr-x  6 dark dark   4096 1220 00:41 languages
drwxrwxr-x 72 dark dark   4096 1220 00:41 legal
drwxrwxr-x 13 dark dark   4096 1220 00:41 lib
-rw-rw-r--  1 dark dark  21035 1219 23:47 LICENSE_NATIVEIMAGE.txt
-rw-rw-r--  1 dark dark  23491 1020 18:42 LICENSE.txt
-rw-rw-r--  1 dark dark   4128 1020 19:09 release
-rw-rw-r--  1 dark dark 354225 1020 18:42 THIRD_PARTY_LICENSE.txt
drwxrwxr-x  9 dark dark   4096 1220 00:41 tools

验证JAVA版本

在graalvm的bin目录下执行命令验证java版本,当前的版本为17.0.5

dark@dark:~/.jdks/gvm/graalvm-ce-java17-22.3.0/bin$ ./java -version
openjdk version "17.0.5" 2022-10-18
OpenJDK Runtime Environment GraalVM CE 22.3.0 (build 17.0.5+8-jvmci-22.3-b08)
OpenJDK 64-Bit Server VM GraalVM CE 22.3.0 (build 17.0.5+8-jvmci-22.3-b08, mixed mode, sharing)

IDE切换JAVA版本

  1. 使用快捷键ctrl+shift+alt+s。或者依次点击:文件->项目结构,并在平台设置->SDK中加入我们刚解压好的graalvm,如图:

  1. 在项目中,将sdk选择为我们刚引入的graalvm-17

启动项目

执行Application中的main方法来验证一下启动速度:

/home/dark/.jdks/gvm/graalvm-ce-java17-22.3.0/bin/java org.dark.migration.MigrationApplication.   ____          _            __ _ _/\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/  ___)| |_)| | | | | || (_| |  ) ) ) )'  |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot ::                (v3.0.0)2022-12-20T01:06:02.552+08:00  INFO 10606 --- [           main] o.dark.migration.MigrationApplication    : Starting MigrationApplication using Java 17.0.5 with PID 10606 (/home/dark/code/migration/target/classes started by dark in /home/dark/code/migration)
2022-12-20T01:06:02.561+08:00  INFO 10606 --- [           main] o.dark.migration.MigrationApplication    : No active profile set, falling back to 1 default profile: "default"
2022-12-20T01:06:03.276+08:00  INFO 10606 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2022-12-20T01:06:03.299+08:00  INFO 10606 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 12 ms. Found 0 JPA repository interfaces.
2022-12-20T01:06:03.941+08:00  INFO 10606 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2022-12-20T01:06:04.550+08:00  INFO 10606 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
2022-12-20T01:06:04.611+08:00  INFO 10606 --- [           main] o.hibernate.jpa.internal.util.LogHelper  : HHH000204: Processing PersistenceUnitInfo [name: default]
2022-12-20T01:06:04.669+08:00  INFO 10606 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate ORM core version 6.1.5.Final
2022-12-20T01:06:05.420+08:00  INFO 10606 --- [           main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2022-12-20T01:06:05.822+08:00  INFO 10606 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2022-12-20T01:06:05.832+08:00  INFO 10606 --- [           main] o.dark.migration.MigrationApplication    : Started MigrationApplication in 3.832 seconds (process running for 4.358)

可以看到启动速度仅3.8s,有效挽救了博主的顶上三毛。

graalvm 拯救生命,速速入手相关推荐

  1. AJAX框架衣柜内部结构,揭秘最实用的衣柜内部结构这样布局,速速get!

    原标题:揭秘最实用的衣柜内部结构这样布局,速速get! 下面这个衣柜是一整面墙通顶,三对平开门,总长在3m左右,内部设计的非常合理,我们就以它为例给大家具体分析一下. 衣柜顶部 衣柜顶部全部设计的隔板 ...

  2. 阿里云盘内测申请_阿里云网盘强势来袭,内测资格速速申请

    网盘荟萃 国产:360云盘.微云.天翼云盘.115网盘.金山快盘.蓝奏云.新浪微盘.360云盘.迅雷快盘.金山快盘.华为网盘.UC网盘--等 国外:Google Drive.onedrive--等 网 ...

  3. 中国芯,华为海思中文官网上线,速速围观

    2020 年11 月 12 日消息,华为海思宣布海思(Hisilicon)中文官网现已全新上线. 官网地址:http://www.hisilicon.com/cn 点击跳转 官网显示信息显示: 海思为 ...

  4. 看了以后大呼过瘾的程序员必备网站,速速收藏!

    程序员必备的网站,网络上一搜一大把,动辄几十个甚至一百个,虽说大多数网站也都是实用的,但数量庞杂未免让人眼花缭乱. 这里我就只挑选精华,只挑选出程序员必备的8个网站,服务于程序员的工作&生活的 ...

  5. frameset在html5下用什么代替_速速围观!冬至吃货地图来啦~蚌埠的吃货们,你们今天吃什么?...

    中国传统二十四节日 冬 农历十一月初七 至 冬至,又称日短至.冬节.亚岁等,兼具自然与人文两大内涵,既是二十四节气中一个重要的节气,也是中国民间的传统节日,被视为冬季的大节日. 我们迎来了冬至节气,真 ...

  6. 国庆必备海报文案大礼包,速速收下!

    国庆长假马上到了 你的放"价"活动准备好了吗? 不管做什么活动 都少不了国庆祝福海报和文案 毕竟只有在朋友圈里刷出存在感 才能做好活动预热呀 今天小编就为大家速递一波 国庆节必备祝 ...

  7. ceph auth get boostrap-osd_那些某橙色软件都能GET到手的有文凭粗粮 速速前来种草

    这位客官,留下脚步! 你看现在人均养生小能手,粗粮杂粮天天都吃着,但是你真的吃到又好营养又丰富的粗粮了么? 什么?你说你的粗粮都是从乡下农村带回来的,一定健康营养? 哎呀朋友,这你就不懂了,乡下带回来 ...

  8. 增长量计算n+1原则_【岗位能力干货】:速速收藏!资料分析常见名词与干货!...

    资料分析常见名词与干货: 基期和本期 基期,表示的是在比较两个时期的变化的时候,用来作比较值(基准值)的时期,该时期的数值通常作为计算过程中的除数或者减数. 本期,相对于基期而言,是当前所处的时期,该 ...

  9. 从刚入职阿里的学弟那里薅来的面试题,速速领取~~~

    最近收到学弟好消息,经历几番尝试和挣扎,终于在今年入职阿里,实现了自己的职业梦想!! 学弟17年毕业国内211院校本科,19-21年在业内有些知名度小厂工作,下半年的时候准备跳槽. 学弟准备跳槽前,经 ...

最新文章

  1. 公开课 | 旷视科技产品总监:计算机视觉如何赋能身份验证场景
  2. Struts2学习入门
  3. python 神经网络中隐藏层的作用是什么?
  4. [知识图谱实战篇] 一.数据抓取之Python3抓取JSON格式的电影实体
  5. MapXtreme 2005新增内容
  6. Python爬虫 ---(1)爬虫基础知识
  7. UITextfield键盘相关设置
  8. Windows Server 2016-Wbadmin命令行备份域控制器
  9. 用C语言来实现冒泡排序
  10. 0xc0000005 系统应用日志_异常代码: 0xc0000005
  11. cocos2d-x android 直接加载下载到sd的zip里的资源文件(一)
  12. apicloud 项目常用插件
  13. 部署Gbase 8c的系统要求
  14. 最近看到一篇文章拿来跟午饭们分享--养生之道补肾气
  15. Windows 7 SATA与XP IDE双启动多个磁盘
  16. 关于火狐浏览器无法倍速看百度网盘视频
  17. el-table 树形表格 自定义展开图标_Icon Slate for mac(图标制作工具) v4.5.0
  18. 二分法算法复杂度简化_让我们简化算法的复杂性!
  19. 如何维持手机电池寿命_七大技巧让你的iPhone电池延长使用寿命
  20. 关于网站漏洞的案例和解决思路

热门文章

  1. FEC系列(一)webrtc中的媒体保护策略
  2. 浅析 Makefile
  3. xp计算机硬盘序列号,发表一个最简单的XP以上系统中获取CPUID、硬盘序列号、BIOS序列号等等的函数!(100分)...
  4. DeepLearning | 经典卷积神经网络VGG_Net
  5. openjudge 1.9.13 整数去重
  6. php运行报错时继续运行,php的异常和处理
  7. linux系统题库的答案,Linux操作系统知道题库及答案
  8. Python传递参数,包裹传递
  9. 权限系统中的数据权限就该这么设计,yyds!
  10. PAT【甲级】1145