It’s also worth noting Lambda still lacks a formal SLA.
Given how relaxed their SLAs are (S3 starts at 99% availability, and that's defined only by returned errors, excluding timeouts), does it even matter?
Is the high latency you mention due entirely to cold starting instances, or is there another cause?
We had huge problems with Java and Lambda start up times. I would strongly recommend python/nodejs or maybe Go. For whatever reason .Net core was still slower but not Java holy crap slow.
It seems to be. It can be "cold" when the lambda hasn't run at all in a while and the first instance starts, or "cold" when due to increase in load, or for whatever reason that you're not supposed to know or care about, instances are running but it runs on a new instance.