Lambda functions can have cold starts that introduce latency. How do you manage that?
(From my small amount of experience - please prove me wrong.)
Lambda functions can have cold starts that introduce latency. How do you manage that?
(From my small amount of experience - please prove me wrong.)
That still sucks, so then you can (hopefully) cache some things so that _some_ data begins to stream in. Or you can make it so your very high priority stuff has minimal dependencies - you can get a Lambda cold start in < 1s if your app only uses the standard library.
But still, in my experience, cold starts are a thing. If you have a high-traffic app or use Lambda warming, you decrease the # of people who experience a cold start, but at the end of the day, your p99 is going to be worse than a vanilla VM solution, because _some_ people will get cold starts. For some apps, that's OK - think line of business app where the first few pages can be served from static materials or cached materials, and you trigger the requests in the background.
Second, minimizing the function's code size. Both by making small functions and then optimizing them (there are plugins for the serverless framework to do that)
Third, using a language with a minimized cold start. Some can have cold start latences lower than 1 second [^1]
But then again, I did already know the other fiddly bits of AWS.