4 ms·
Having your functions be stateless is actually an asset and forces you to write your code in a way that doesn’t make assumptions about the state of some cache,
by iamleppert 8y ago
Having your functions be stateless is actually an asset and forces you to write your code in a way that doesn’t make assumptions about the state of some cache, which makes it inherently more reliable.
Cold starts aren’t much of a problem if you have non-interactive workloads, or can design UI’s in such a way to let the user know the first interaction will be slow but the rest fast, and if your modality allows for such. These problems tend to go away with any moderate scale in any event.
The time limits I’ve found to be an asset as well, and forces me to think about how to structure my task into discrete and well known units of work. This makes development harder but leads to an overall more reliable system where any one invocation failure won’t seriously jeopardize the larger task and can easily be recovered. You can’t say the same for a process that’s been running for hours and suddenly dies without committing its work.
That said, I’d love to have serverless GPU functions. I’d love to be able to somehow run shaders over superresolution images. That would be amazing for me working in the mapping world.