Belajar menghitung total cost of ownership secara jujur, memahami pricing model cloud dari on-demand hingga spot, menerapkan teknik desain hemat biaya tanpa mengorbankan target reliability, serta menyusun estimasi biaya yang lolos persetujuan stakeholder

Setelah di episode 8 solusi kalian punya fondasi keamanan yang terancang sejak desain, kita beralih ke bahasa yang paling didengar stakeholder: biaya. Sebagus apa pun arsitektur kalian, ia tidak akan dibangun jika angkanya tidak masuk akal bagi yang membayar. Dan di era pasca-boom belanja cloud, pertanyaan "berapa biaya bulanan per ribu user?" adalah pertanyaan wajib di setiap review solusi.
Mengapa cost sering meledak? Karena keputusan desain awal menentukan 70-80% biaya jangka panjang — dan keputusan itu diambil oleh SA, bukan tim finance. NAT gateway yang salah tempat, log yang tak pernah dirotasi, atau environment dev yang berjalan 24/7 adalah contoh klasik tagihan surprise yang bisa dicegah di fase desain.
Kesalahan paling umum adalah membandingkan harga instance saja. TCO mencakup semua:
| Komponen | Contoh pada Solusi Tiket |
|---|---|
| Compute | App servers, autoscaling saat sale |
| Data & storage | RDS Multi-AZ + standby, Redis, object storage |
| Network | Data transfer keluar (sering termahal!), NAT gateway per jam+GB, LB |
| Layanan pendukung | CDN, WAF, monitoring, secret manager |
| Orang & operasi | On-call, maintenance, tooling internal |
| Biaya kesempatan | Lambatnya delivery karena kompleksitas ops |
Dua catatan penting dari tabel itu:
Empat model dasar yang harus kalian kuasai untuk tiap komponen solusi:
| Model | Harga | Cocok Untuk |
|---|---|---|
| On-demand | Termahal per jam, fleksibel penuh | Workload variabel, environment singkat |
| Reserved / Savings Plan | Diskon ±30-72% komitmen 1-3 tahun | Baseline stabil 24/7 (database, app minimum) |
| Spot / Preemptible | Diskon hingga 90%, bisa direklaim | Batch, stateless worker, CI runner |
| Serverless per-use | Bayar per request/durasi | Traffic rendah-spike, job periodik |
Strategi standar yang menghasilkan: baseline pakai reserved, spike pakai on-demand/autoscaling, batch pakai spot. Untuk studi kasus tiket: kapasitas normal reserved tahunan; window sale dua hari ditangani autoscaling on-demand; pekerjaan generate laporan dan render aset di spot fleet.
Warning
Spot memberi diskon besar dengan risiko instance direklam mendadak. Aturan desainnya tegas: hanya workload stateless/interruptible yang boleh di spot, selalu dengan checkpoint atau retry. Database utama di spot adalah insiden yang tinggal menunggu waktu.
Cost efficiency bukan soal menekan tombol diskon saja — mayoritas penghematan datang dari keputusan desain:
Contoh guardrail otomatis yang layak dimasukkan sebagai bagian delivery solusi:
# Tagging wajib agar biaya bisa diatribusikan per proyek/environment
aws resourcegroupstaggingapi get-resources \
--tag-filters Key=project,Values=ticketing Key=env,Values=prod
# Budget alert 50/80/100% via AWS Budgets (budget.json didefinisikan di episode 0)
aws budgets describe-budget --account-id <ID_AKUN> --budget-name ticketing-monthlyTagging sering dianggap formalitas padahal ia fondasi visibility: tanpa tag, kalian tidak bisa menjawab "kenapa tagihan naik 40%?" — dan tanpa jawaban itu tidak ada optimasi yang bisa dimulai.
Format estimasi yang saya rekomendasikan untuk SDD bagian 5 — transparan atas asumsinya:
Asumsi : 500 rb tiket/bln, rata 20 req/s, peak sale 50 rb user 2 hari
Compute : 4x baseline reserved + autoscaling peak Rp 12.400.000
Database : RDS Multi-AZ db.m6g.large + storage Rp 8.200.000
Cache : ElastiCache redis.m6g.large Rp 3.100.000
Network : LB + egress 1,5 TB + NAT Rp 5.900.000
Lain-lain : CDN, WAF, monitoring, secrets Rp 2.700.000
Non-prod : dev+staging (scheduled 12x5) Rp 2.300.000
---------------------------------------------------------------
TOTAL : Rp 34.600.000
Peak sale : tambahan on-demand 2 hari Rp 4.800.000Perhatikan struktur yang membuatnya bisa diaudit: asumsi traffic di atas, breakdown per komponen, skenario puncak terpisah, dan sumber angka disebut (pricing calculator). Saat ada yang mempersoalkan, kalian tinggal membuka asumsi mana yang diperdebatkan — estimasi berubah menjadi diskusi data, bukan debat perasaan.
Satu angka lagi yang membuat kalian terlihat matang: biaya per unit bisnis. Bagi total biaya dengan unit yang dipahami bisnis:
Rp 34,6 jt / 500 rb tiket = Rp 69 per tiket (infra)
Target bisnis <= Rp 100 per tiket -> SEHAT, margin amanKalimat "biaya infrastruktur kami Rp 69 per tiket, di bawah target Rp 100" jauh lebih kuat di rapat daripada "kami sudah pakai spot instance".
Estimasi hanyalah awal; biaya hidup sepanjang umur sistem:
Inti yang harus dibawa pulang:
Di episode 10 selanjutnya kita akan membahas documentation & handoff — cara menulis dokumen solusi yang benar-benar dibaca, standar diagram C4, merapikan ADR, serta melakukan handoff ke tim delivery sehingga niat desain kalian dieksekusi apa adanya. Sampai jumpa di episode 10!