Komputasi serverless memungkinkan Anda menjalankan kode tanpa mengelola server. Anda menulis fungsi, men-deploy-nya, dan platform menangani penskalaan, ketersediaan, dan infrastruktur. Di tahun 2026, tiga platform mendominasi lanskap serverless: AWS Lambda, Vercel Serverless Functions, dan Cloudflare Workers. Masing-masing memiliki kekuatan dan kompromi yang berbeda.
Dalam artikel ini, kami membandingkannya dengan contoh nyata, pertimbangan performa, dan rincian harga.
Cara Kerja Serverless
Anda men-deploy sebuah fungsi. Ketika permintaan tiba, platform:
- Memulai lingkungan eksekusi (atau menggunakan kembali yang sudah aktif)
- Menjalankan fungsi Anda
- Mengembalikan respons
- Menskalakan ke nol saat idle (Anda tidak membayar untuk waktu idle)
Gambaran Platform
AWS Lambda
Platform serverless yang pertama (diluncurkan 2014). Paling matang dan kaya fitur, dengan integrasi mendalam ke dalam ekosistem AWS.
// AWS Lambda handler export const handler = async (event) => { const body = JSON.parse(event.body); const result = await processData(body); return { statusCode: 200, headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(result), }; };
Vercel Serverless Functions
Terintegrasi erat dengan Next.js dan alur kerja deployment frontend. Fungsi di-deploy bersama frontend Anda tanpa konfigurasi.
// app/api/hello/route.ts (Next.js App Router) import { NextResponse } from 'next/server'; export async function GET(request: Request) { const { searchParams } = new URL(request.url); const name = searchParams.get('name') || 'World'; return NextResponse.json({ message: `Hello, ${name}!` }); }
Cloudflare Workers
Berjalan di jaringan edge Cloudflare di lebih dari 300 kota di seluruh dunia. Menggunakan mesin V8 (sama seperti Chrome) alih-alih Node.js, yang berarti cold start yang sangat cepat.
// Cloudflare Worker export default { async fetch(request, env) { const url = new URL(request.url); const name = url.searchParams.get('name') || 'World'; return new Response( JSON.stringify({ message: `Hello, ${name}!` }), { headers: { 'Content-Type': 'application/json' } } ); }, };
Perbandingan Fitur
| Fitur | AWS Lambda | Vercel Functions | Cloudflare Workers |
|---|---|---|---|
| Runtime | Node.js, Python, Go, Rust, Java, .NET | Node.js, Python, Go, Ruby | V8 Isolates (JS/TS, Rust via WASM) |
| Waktu eksekusi maks | 15 menit | 60s (Hobby), 300s (Pro) | 30s (gratis), 15min (berbayar) |
| Memori | 128MB - 10GB | 1024MB - 3008MB | 128MB |
| Cold start | 100-500ms | 100-300ms | < 5ms |
| Lokasi deploy | Region tunggal (atau multi dengan usaha) | Beberapa region | 300+ lokasi edge |
| Payload maks | 6MB (sinkron), 256KB (asinkron) | 4.5MB | 100MB |
| Penyimpanan bawaan | Tidak (gunakan DynamoDB, S3) | Tidak (gunakan DB eksternal) | KV, D1 (SQLite), R2 (kompatibel S3) |
| Model harga | Per permintaan + durasi | Termasuk dalam paket | Per permintaan + durasi |
| Tier gratis | 1M permintaan/bulan | 100K/bulan (Hobby) | 100K permintaan/hari |
Cold Start
Cold start adalah waktu yang dibutuhkan untuk menginisialisasi instance fungsi baru. Ini adalah masalah performa terbesar dengan serverless.
| Platform | Cold Start Tipikal | Mengapa |
|---|---|---|
| Cloudflare Workers | < 5ms | Isolate V8, tidak perlu runtime penuh |
| Vercel Functions | 100-300ms | Runtime Node.js di edge atau regional |
| AWS Lambda | 100-500ms | Inisialisasi container penuh |
| AWS Lambda (Java) | 1-5 detik | Overhead startup JVM |
Cloudflare Workers menang dalam cold start dengan selisih besar karena menggunakan isolate V8 alih-alih container.
Perbandingan Harga
Tier Gratis
| Platform | Permintaan Gratis | Komputasi Gratis |
|---|---|---|
| AWS Lambda | 1M/bulan | 400.000 GB-detik |
| Vercel | 100K/bulan | Termasuk dalam paket Hobby |
| Cloudflare Workers | 100K/hari (~3M/bulan) | 10ms CPU per pemanggilan |
Dalam Skala (10M permintaan/bulan, durasi rata-rata 50ms)
| Platform | Estimasi Biaya Bulanan |
|---|---|
| AWS Lambda | ~$2,50 (permintaan) + |
| Vercel | $20/bulan (paket Pro, termasuk fungsi) |
| Cloudflare Workers | $5/bulan (paket berbayar, termasuk 10M permintaan) |
Untuk sebagian besar kasus penggunaan, Cloudflare Workers adalah yang termurah. Harga Vercel sederhana tetapi mencakup seluruh platform (hosting, CDN, analytics). AWS Lambda memiliki harga yang paling terperinci.
Kasus Penggunaan Dunia Nyata
AWS Lambda: Terbaik Untuk
- Alur kerja backend yang kompleks - step functions, arsitektur berbasis event
- Integrasi dengan layanan AWS - trigger S3, stream DynamoDB, antrian SQS
- Tugas berjalan lama - hingga 15 menit waktu eksekusi
- Tim multi-bahasa - mendukung jangkauan runtime terluas
Vercel Functions: Terbaik Untuk
- Aplikasi Next.js - rute API tanpa konfigurasi
- Tim yang berfokus pada frontend - deploy frontend dan backend bersama
- Prototyping cepat - git push untuk deploy
- Arsitektur Jamstack - frontend statis + API serverless
// app/api/subscribe/route.ts import { NextResponse } from 'next/server'; export async function POST(request: Request) { const { email } = await request.json(); // Validate if (!email || !email.includes('@')) { return NextResponse.json( { error: 'Invalid email' }, { status: 400 } ); } // Save to database await db.subscribers.create({ email }); return NextResponse.json({ success: true }); }
Cloudflare Workers: Terbaik Untuk
- API latensi rendah - kode berjalan di 300+ lokasi di seluruh dunia
- Edge computing - transformasi respons, pengujian A/B, personalisasi
- API volume tinggi - termurah dalam skala dengan tier gratis yang murah hati
- Aplikasi global - data dekat dengan pengguna dengan KV dan D1
// Edge-side A/B test export default { async fetch(request, env) { const url = new URL(request.url); // Assign user to variant const cookie = request.headers.get('Cookie') || ''; let variant = cookie.includes('ab=b') ? 'b' : 'a'; if (!cookie.includes('ab=')) { variant = Math.random() < 0.5 ? 'a' : 'b'; } // Fetch the appropriate version const response = await fetch(`${url.origin}/variants/${variant}`); const newResponse = new Response(response.body, response); // Set cookie for consistent experience newResponse.headers.set('Set-Cookie', `ab=${variant}; Path=/; Max-Age=86400`); return newResponse; }, };
Kapan Memilih Yang Mana
Pilih AWS Lambda jika:
- Anda sudah berinvestasi di ekosistem AWS
- Anda membutuhkan fungsi berjalan lama (hingga 15 menit)
- Anda membutuhkan arsitektur berbasis event yang kompleks
- Anda membutuhkan runtime selain JavaScript (Python, Go, Rust, Java)
Pilih Vercel Functions jika:
- Anda membangun dengan Next.js atau framework frontend
- Anda menginginkan pengalaman deploy paling sederhana (git push)
- Tim Anda berfokus pada frontend
- Anda menginginkan hosting + fungsi + CDN dalam satu platform
Pilih Cloudflare Workers jika:
- Anda membutuhkan latensi serendah mungkin secara global
- Anda menginginkan opsi termurah dalam skala
- Anda membutuhkan kemampuan edge computing
- Waktu cold start sangat penting untuk kasus penggunaan Anda
Bisakah Anda Menggabungkannya?
Tentu saja. Arsitektur yang umum:
- Cloudflare Workers: routing edge, caching, keamanan
- Vercel Functions: rute API frontend, SSR
- AWS Lambda: pemrosesan backend berat, tugas terjadwal, pipeline event
Kesimpulan
Serverless telah matang secara signifikan. Di tahun 2026, pilihan antara AWS Lambda, Vercel Functions, dan Cloudflare Workers bergantung pada stack dan prioritas Anda:
- Pengalaman developer paling sederhana: Vercel
- Paling powerful dan fleksibel: AWS Lambda
- Performa dan harga terbaik: Cloudflare Workers
Ketiganya siap produksi dan teruji dalam pertempuran. Mulai dengan yang sesuai dengan stack Anda saat ini, dan perluas seiring kebutuhan Anda bertumbuh.