Arsitektur Layanan mikro terdiri dari komponen perangkat lunak yang sepenuhnya independen dengan ukuran yang sangat kecil, yang disebut sebagai layanan mikro, dengan spesialisasi dan fokus hanya pada satu tugas. Layanan mikro berkomunikasi melalui API, yaitu aturan yang dibuat oleh developer untuk memungkinkan sistem perangkat lunak berkomunikasi dengan layanan mikronya.
Gaya arsitektur layanan mikro sangat sesuai untuk lingkungan komputasi cloud. Layanan mikro lebih banyak beroperasi dalam kontainer—unit perangkat lunak independen yang mengemas kode dengan semua dependensinya.
Manfaat layanan mikro
Layanan mikro bersifat dapat diskalakan secara independen, cepat, portabel, dan agnostik platform—yang native terhadap cloud. Layanan mikro juga bersifat terpisah, yang berarti bahwa layanan mikro tidak dibatasi dependensi pada layanan mikro lainnya. Untuk mencapai hal tersebut, layanan mikro memiliki akses lokal ke semua data yang layanan mikro butuhkan alih-alih akses jarak jauh untuk data terpusat yang diakses dan digunakan oleh sistem lain. Hal ini akan membuat duplikasi data yang akan digantikan layanan mikro dalam hal performa dan ketangkasan.
Perbandingan antara SOA dan layanan mikro
Arsitektur layanan mikro adalah evolusi dari gaya arsitektur SOA. Layanan mikro mengatasi kekurangan SOA untuk membuat perangkat lunak menjadi lebih kompatibel dengan lingkungan korporasi berbasis cloud modern. Layanan mikro bersifat terperinci dan memilih duplikasi data sebagai kebalikan dari berbagi data. Hal ini menjadikannya independen sepenuhnya dengan protokol komunikasinya sendiri yang dieskpos melalui API yang ringan. Pada dasarnya, menggunakan layanan mikro melalui API-nya merupakan tugas dari pelanggan sehingga tidak perlu ESB yang terpusat.