Microservices sering kali merupakan pilihan awal yang salah. Aturan umum adalah "monolith terlebih dahulu": mulai dengan monolith yang terstruktur dengan baik dan ekstrak layanan hanya ketika Anda memiliki alasan konkret.
Hindari microservices ketika
✗ Small team — more services than people to run them
✗ Early-stage product — domain boundaries still shifting
✗ No CI/CD, monitoring, or tracing in place
✗ Low traffic — no real scaling pressure
✗ Simple domain — splitting adds cost, not value
Biaya pemisahan prematur
Memindahkan panggilan metode dalam proses ke panggilan jaringan menambahkan latensi, mode kegagalan, serialisasi, dan unit deployment. Jika batas salah, Anda membayar semua itu masih harus refactor di seluruh layanan.
