Monolith
Arsitektur aplikasi di mana semua komponen berada dalam satu codebase dan di-deploy sebagai satu unit.
Monolith adalah arsitektur di mana seluruh aplikasi (frontend, backend, business logic, data access) berada dalam satu codebase dan di-deploy sebagai satu unit. Semua modul berbagi database yang sama. Keuntungan monolith: Simpler development (satu repo, satu deploy pipeline), Easier debugging (tidak perlu trace antar services), Better performance (tidak ada network calls antar modul), dan Transaction management sederhana (ACID database transaction). Kekurangan: Scalability terbatas (harus scale seluruh aplikasi meski hanya satu fitur yang ramai), Tight coupling (perubahan di satu modul bisa affect modul lain), dan Deployment risk (satu bug bisa down seluruh aplikasi). Best practice: Modular Monolith — monolith dengan batasan modul yang jelas, bisa dipecah ke microservices nanti kalau perlu.