For others information, I did some absolute best case scenario tests.. using openj9 which should have better startup time than hotspot, using all startup optimizations, including shared classes cache, a jlink'd runtime as custom runtime layer, and the built in jdk 11 httpclient, running on a 1GB lambda... is showing 3.8 seconds initDuration in cloudwatch insights. Total end user latency to the json endpoint is 4.7 seconds. Honestly was hoping for better like under 2 seconds with all that, but sounds like graal native compilation is the only real option for non background jobs.
I've gotten < 1 second on an ordinary JVM, using a custom runtime layer
no graal native necessary, though you always need to be careful about # of classes loaded
this is also a non-issue when you do provisioned concurrency