24 points seanw265 49 minutes ago 8 comments

hoppp 33 minutes ago | parent

Isn't that a configurable parameter?

ceejayoz 32 minutes ago | parent

Yes. Buried several paragraphs past the headline is a note saying "AWS documents this behavior."

This is marketing for a Lambda competitor.

stymaar 23 minutes ago | parent

What's the default though? Because if the 7min thing happen with default settings, then it's definitely blog post worthy.

Hnrobert42 23 minutes ago | parent

Hmm. Are you sure? The article says AWS documents the behavior, but there is no way to configure it. They tried forcing an early shutdown, but that caused AWS to record an error event.

seanw265 22 minutes ago | parent

Not as far as I can tell. Web Functions let you configure concurrency, maximum environment count, and request rate limits, but there's no setting for how long an environment stays alive after its last request. The configurable timeout applies to individual requests, not the environment itself.

I measured between 5 and 7 minutes of idle time (after the last request had ended) across six environments. I was able to cut this short by exiting the process myself, but AWS records this as a runtime error so IMO it's not suitable to rely on in production.

Here's the AWS scaling documentation. I'm happy to be corrected if I missed anything.

https://docs.aws.amazon.com/lambda/latest/dg/web-functions-s...

catlifeonmars 24 minutes ago | parent

Does the ~7 minutes get amortized over sustained load (due to container reuse)? I feel like the article doesn’t consider the shape of the traffic and workloads in its analysis of why lambda is not a good fit.

netik 19 minutes ago | parent

This a bit of a “yeah, so?” Statement.

You can configure teardown and minimum workers, and with a busy site, most of the time requests aren’t going to stop enough for this to matter.

seanw265 12 minutes ago | parent

Yes for sure, if your web function is very active this is less of an issue. But not every workload fits that mold.

Also: afaict idle time before teardown is not configurable.