My first attempt to try out compiling a Micronaut app to a native GraalVM image ended up with a disastrous “Out of Memory”. After more than ten minutes of a spinning fan (on a 4-core machine with 16GB RAM) that’s what I got:
I am fully aware that the hoops that the GraalVM compile has to go through are simply phenomenal, and I have heard many good words about the level of performance that apps are able to reach this way. Yet, as of this moment this option just seems too impractical, compared to Go’s compilation time of mere seconds.
That said, the startup time and memory footprint of the same Micronaut app running on the JVM are quite good, when compared to Spring Boot.