เพิ่งเห็นว่า Spring Boot RC2 ถูกปล่อยออกมาแล้ว
โดยสิ่งที่เพิ่มเข้ามาเป็นค่า default คือ Native Java ด้วย GraalVM นั่นเอง
ทำการแปลงจาก bytecode มาเป็น native machine code (executable หรือ native image) ให้
ทำให้สามารถ run ระบบงานโดยไม่ต้องใช้งาน JVM

ประโยชน์ที่ได้รับ ประบกอบไปด้วย

  • ระบบงาน start ได้เร็วขึ้น
  • Latency น้อยลง
  • ใช้ memory และ CPU น้อยลง

มาลองใช้งานนิดหน่อย

สำหรับการ build ด้วย Gradle

ปล. อย่าลืมติดตั้ง
GraalVM :: Native Image และตรวจสอย $JAVA_HOME และ $GRAALVM_HOME

ทำการ build native image กันจาก Gradle

เปรียบเทียบการ run แบบเดิมกับ native ว่าต่างกันอย่างไร
สำหรับ start up time

มาลองทดสอบใช้งานกันดูครับ

Reference Websites

  • https://blogs.oracle.com/java/post/go-native-with-spring-boot-3-and-graalvm