Microservices adalah gaya arsitektur di mana aplikasi dibangun sebagai kumpulan layanan kecil yang dapat digunakan secara independen, masing-masing memiliki satu kemampuan bisnis dan berkomunikasi melalui jaringan (HTTP, gRPC, atau pesan).
Cara kerjanya
Setiap layanan berjalan dalam proses tersendiri, memiliki penyimpanan data sendiri, dan dapat dikembangkan, digunakan, dan diskalakan secara independen. Tim memiliki layanan dari awal hingga akhir.
┌──────────────┐
Client ─▶ │ API Gateway │
└──────┬───────┘
┌───────────┼───────────┐
▼ ▼ ▼
┌────────┐ ┌─────────┐ ┌──────────┐
│ Orders │ │ Payments│ │ Shipping │ ← each: own code + DB
└───┬────┘ └────┬────┘ └────┬─────┘
▼ ▼ ▼
ordersDB paymentsDB shippingDB
