Yes, startup time is a concern with the JVM, but that's not what it's built for - it's meant for long-runnning repeatable code paths.
Yes, startup time is a concern with the JVM, but that's not what it's built for - it's meant for long-runnning repeatable code paths.
There was nothing in the original design that said "only long running server processes". In fact, Java was originally aimed at set-top boxes, then web applets, then cross platform GUI apps. It was only after it failed in all of these that the server was discovered, despite the fact that "write once, run anywhere" is almost completely pointless when you control the hardware it runs on.
The long startup times are a limitation of the implementation technology, not a principled design choice. See also: Jitterdämmerung ( http://blog.metaobject.com/2015/10/jitterdammerung.html )
http://benchmarksgame.alioth.debian.org/sometimes-people-jus...
Note the timings are seconds and tens-of-seconds.
http://benchmarksgame.alioth.debian.org/u64q/program.php?tes...
The measurement shown is 21.54 secs.
The average JMH shows is 23.367 ± 0.062.