Back to Publication
Cloud & DevOps
By Riazul Islam•
Summary: Serverless sounds magical - no servers to manage, pay only for what you use. But it's not for everything. Here's the real picture.
## What Serverless Actually Means
Serverless doesn't mean "no servers." It means you don't manage them. Cloud providers handle provisioning, scaling, and maintenance. You just write functions.
### How Serverless Works
1. You write a function (e.g., "process this payment")
2. Deploy it to AWS Lambda, Vercel, or similar
3. It runs only when triggered (HTTP request, schedule, event)
4. You pay per execution, not per hour
### When Serverless Shines
- **APIs with variable traffic** - scales to zero when idle
- **Webhooks** - process incoming events
- **Scheduled tasks** - cron jobs without a server
- **Image/file processing** - run on-demand
- **Prototypes and MVPs** - ship fast, optimize later
### When Serverless Hurts
- **Long-running tasks** - most have a 15-minute timeout
- **WebSocket connections** - persistent connections don't fit
- **Heavy computation** - cold starts add latency
- **Complex applications** - microservices might be better
### The Cold Start Problem
When a serverless function hasn't been called recently, it needs to "warm up." This can add 500ms-2s of latency. Solutions:
- Use provisioned concurrency
- Choose lighter runtimes (Node.js vs Java)
- Keep functions small
### Cost Comparison
**For a small API handling 100K requests/month:**
- Traditional server: $20-50/month
- Serverless: $1-5/month
**For an API handling 100M requests/month:**
- Traditional server: $200-500/month
- Serverless: $150-300/month (can be cheaper!)
### My Serverless Stack
- **Edge Functions**: Supabase Edge Functions or Cloudflare Workers
- **Storage**: S3 or Cloudflare R2
- **Database**: Supabase PostgreSQL
- **Queues**: AWS SQS or Upstash
**Serverless is a tool, not a religion. Use it where it makes sense.**
