O que é o GraalVM


GraalVM é uma máquina virtual de alto desempenho que suporta várias linguagens, incluindo Java, e oferece um recurso chamado Native Image.

Esse recurso compila o código Java (ou bytecode) em um executável nativo específico para a plataforma (Linux, macOS, Windows, etc.).

Diferentemente de uma aplicação Java tradicional, que roda na JVM e depende de um tempo de inicialização mais longo e maior consumo de memória, uma imagem nativa:

  • Reduz o tempo de inicialização (startup time) para milissegundos, ideal para ambientes como Kubernetes, onde containers efêmeros, podendo ser iniciados e destruídos frequentemente.

  • Diminui o consumo de memória, já que elimina a necessidade de carregar a JVM completa.

  • Produz imagens de container menores, porque o executável nativo é mais compacto que o pacote de uma aplicação Java com dependências e a JVM.

Note

O Spring Boot, a partir da versão 2.3 (com melhorias significativas nas versões 3.x), integrou suporte ao GraalVM Native Image por meio do projeto Spring Native.

Referências


https://youtu.be/Rk4zfvVvRks?si=DqUgP8q_Au4PCVGC