Lambdas - good for deploying quickly.
Rating: 6 out of 10
IncentivizedUse Cases and Deployment Scope
We use Lambdas as the primary deployment mechanism for our APIs. It provides flexible ways to deploy without worrying too much about infrastructure, server resilience, or load.
Pros
- It scales automatically with demand.
- It reduces operational overhead significantly.
- It integrates seamlessly with other AWS services.
- It provides easy ways to deploy and get to prod.
Cons
- Cold starts are still a pain sometimes.
- Deployment can feel clunky. The zipped files can still become really bulky and fail.
- Local debugging isn't always straightforward; it's challenging to set up on my machine for dummy Lambda instances.
Likelihood to Recommend
Lambda excels at event-driven, short-lived tasks, such as processing files or building simple APIs. However, it's less ideal for long-running, computationally intensive, or applications that rely on carrying the state between jobs. Cold starts and constant load can easily balloon the costs.
Alternatives
Amazon Elastic Compute Cloud (EC2), Azure Functions and Cloudflare Workers
It's fine, it works as the others would have, except EC2. We are migrating back to EC2 for dedicated compute because we have scaled to a point where we have consistent traffic. The tradeoff of maintaining infrastructure in-house outweighs the benefits of moving quickly through our roadmap.
