Layanan Serverless #
Ketika mendengar istilah serverless, banyak engineer langsung mengasosiasikannya dengan AWS Lambda, Cloud Functions, atau Azure Functions. Padahal, dalam praktik modern, ekosistem serverless jauh lebih luas.
Banyak platform third-party menyediakan pengalaman serverless dengan:
- Abstraksi infra yang lebih tinggi
- Developer Experience (DX) yang lebih baik
- Latensi lebih rendah (edge-native)
- Model billing yang lebih sederhana
Platform-platform ini sering kali tidak mengelola VM secara eksplisit, bahkan sebagian tidak menggunakan container sama sekali.
Serverless Function Platform (FaaS – Non Cloud Provider) #
Vercel #
Karakteristik Teknis
- Runtime: Node.js, Go, Python
- Model eksekusi: Stateless function
- Deployment terikat dengan Git workflow
Keunggulan
- Integrasi sangat kuat dengan Next.js
- Zero-config deployment
- Cold start relatif kecil
Keterbatasan
- Tidak cocok untuk heavy background job
- Vendor lock-in cukup tinggi
Use Case Ideal
- Backend API untuk frontend
- SSR / ISR
- Lightweight API
Netlify #
Karakteristik Teknis
- Berbasis AWS Lambda (hidden abstraction)
- Mendukung scheduled & background functions
Keunggulan
- Cocok untuk Jamstack
- Setup sangat cepat
- Free tier besar
Keterbatasan
- Kontrol runtime terbatas
- Tidak cocok untuk workload kompleks
Use Case Ideal
- Form handling
- Webhook receiver
- API ringan
Cloudflare Workers #
Karakteristik Teknis
- Tidak menggunakan container
- Berjalan di V8 Isolate
- Eksekusi di edge (global)
Keunggulan
- Latensi sangat rendah
- Skalabilitas ekstrem
- Cold start nyaris nol
Keterbatasan
- Tidak cocok untuk CPU-intensive task
- Batasan runtime dan memory
Use Case Ideal
- API gateway
- Auth middleware
- Edge caching logic
Deno Deploy #
Karakteristik Teknis
- Runtime Deno
- Menggunakan web standard API
- Edge-first execution
Keunggulan
- Security by default
- TypeScript native
- Modern developer ergonomics
Keterbatasan
- Ekosistem belum sebesar Node.js
Use Case Ideal
- API modern
- Proof of concept
- Lightweight service
Serverless Container Platform #
Kategori ini bukan FaaS murni, tetapi memberikan pengalaman serverless melalui auto-scaling, scale-to-zero, dan managed runtime.
Fly.io #
Karakteristik Teknis
- Deploy container
- Distributed VM (micro VM)
- Global placement
Keunggulan
- Latensi rendah
- Lebih fleksibel dari FaaS
Keterbatasan
- Tidak benar-benar stateless
Use Case Ideal
- API latency-sensitive
- Stateful app kecil
Render #
Karakteristik Teknis
- Managed container
- Built-in cron & background worker
Keunggulan
- Setup sederhana
- Cocok untuk backend klasik
Keterbatasan
- Cold start masih terasa
Use Case Ideal
- REST API
- Worker async
Railway #
Karakteristik Teknis
- Deploy service tanpa infra detail
- Usage-based billing
Keunggulan
- Developer friendly
- Cocok untuk prototyping
Keterbatasan
- Bukan untuk enterprise scale
Use Case Ideal
- MVP
- Internal tool
Backend-as-a-Service (BaaS) #
Supabase #
Komponen Utama
- PostgreSQL managed
- Auth
- Storage
- Edge Functions
Keunggulan
- Open-source
- SQL-first
Use Case Ideal
- Startup
- Product MVP
Appwrite #
Karakteristik Teknis
- Self-hostable
- Modular backend service
Keunggulan
- Kontrol penuh infra
- Cocok untuk on-prem
Use Case Ideal
- Enterprise internal system
- Private cloud
Serverless Messaging & Workflow #
Upstash #
Produk
- Redis serverless
- Kafka serverless
Keunggulan
- Per-request billing
- Cocok untuk serverless app
Use Case Ideal
- Queue
- Cache
- Event streaming
Temporal Cloud #
Karakteristik Teknis
- Workflow engine
- Durable execution
Use Case Ideal
- Long-running business process
- Saga pattern
Open-Source Serverless Platform (Self-Hosted) #
OpenFaaS #
- FaaS di atas Docker/Kubernetes
- Cocok untuk hybrid & on-prem
Knative #
- Scale-to-zero
- Event-driven container
- Basis banyak platform serverless modern
Tabel Ringkasan #
| Kategori | Contoh Platform |
|---|---|
| FaaS | Vercel, Netlify |
| Edge | Cloudflare Workers, Deno Deploy |
| Container | Fly.io, Render, Railway |
| BaaS | Supabase, Appwrite |
| Messaging | Upstash |
| Self-hosted | OpenFaaS, Knative |
Penutup #
Serverless tidak identik dengan cloud provider besar. Banyak platform non-traditional justru lebih tepat secara arsitektur untuk:
- Latency-sensitive app
- Frontend-driven system
- MVP dan startup
- Tim kecil dengan fokus ke product
Pemilihan serverless harus berbasis karakteristik workload, bukan popularitas provider.