Serverless lost the “everything” debate but won several specific shapes. By 2026 the verdicts are clear. This post is the working take.
Where serverless wins
1. Event-driven glue
S3 upload → process. Stripe webhook → action. Cron → daily job. Lambda is excellent for these.
2. Edge handlers
Cloudflare Workers handle 99% of edge logic — auth, redirects, A/B routing, transformations. Sub-50ms globally. See Cloudflare Workers + D1 .
3. Low-traffic APIs
A side project with 100 req/day. Lambda or Cloud Run costs $0–5/month. Container on a VM costs $20+/month minimum.
4. AI inference glue
A Lambda that fans out to bedrock models, aggregates results, returns. Free scaling.
5. Internal tools
Forms that submit to a function that updates Notion / Slack. Build in an afternoon.
Where containers / VMs still win
1. Steady-state high traffic
A 1000 req/sec API on Lambda costs more than the same on Fargate, ECS, or a couple of EC2s.
2. Long-running tasks
15-minute Lambda limit. Anything longer needs Step Functions or, simpler, a container.
3. Stateful
Lambda can’t hold connections, in-memory caches, sticky sessions. Containers + Redis is simpler.
4. CPU/GPU-heavy
GPU Lambdas exist but are awkward. For ML inference at scale, dedicated containers (Self-Hosted LLMs ) are the right shape.
5. WebSockets / SSE for many clients
API Gateway WebSockets work but are pricey and finicky. A Go server holding 50k connections on a single VM is simpler. See Design WhatsApp / Chat .
The contenders
| Type | Strengths | |
|---|---|---|
| AWS Lambda | FaaS | Mature, event ecosystem |
| Google Cloud Run | Container-as-a-service | Cleanest container model |
| Cloudflare Workers | V8 isolates | Edge, very cheap |
| Fly Machines | Firecracker microVMs | Fast spin-up, regional |
| Vercel Functions | Serverless TS-first | Next.js integration |
| Modal | GPU-friendly | AI workloads |
For 2026 greenfield: Cloud Run for HTTP, Lambda for events, Workers for edge.
Cold starts (2026 reality)
- Lambda: 100–500ms warm, 500–2000ms cold (Java worst, Node best).
- Cloud Run: ~300–1000ms cold.
- Workers: <10ms cold.
- Fly Machines: <500ms cold.
For latency-sensitive paths, keep instances warm (provisioned concurrency on Lambda, min instances on Cloud Run).
The hybrid pattern
Most 2026 production systems are hybrid:
- Edge (Cloudflare Workers) for auth and routing.
- Containers (Cloud Run / EKS) for the main API.
- Functions (Lambda) for events / cron / async glue.
- GPU (Modal / dedicated) for ML.
Each piece is the right tool for its shape.
Cost reality
- Below 100k req/month: serverless wins on cost.
- 100k–10M req/month: roughly even; depends on memory / latency.
- Above 10M req/month: containers usually cheaper.
Match technology to scale phase.
Read this next
- Cloudflare Workers + D1 + Durable Objects
- Kubernetes in 2026
- Self-Hosted LLMs in 2026
- Microservices vs Monolith in 2026
If you want a hybrid serverless + containers reference architecture, it’s at rajpoot.dev .
Building something AI-, backend-, or data-heavy and want a second pair of eyes? I do consulting and freelance work — see my projects and ways to reach me at rajpoot.dev .