Hallo semuanya, saya sudah lama tidak update di blog ini hehe, pembahasan untuk kali ini yaitu Microservices, langsung saja saya akan jelaskan di bawah yaa, cekidot gan
PENGENALAN
Apa itu Microservice? Microservice adalah sebuah aplikasi yang terbagi menjadi beberapa projek kecil yang dalam masing-masing projek tersebut terdapat berbeda layanan yang saling terhubung dan saling melengkapi satu sama lain, perhatikan gambar di bawah ini.
terlihat dari gambar di atas ibaratkan kotak oranye adalah server, nah dalam server tersebut terdapat hanya satu layanan, jika dibandingkan dengan perhatikan gambar di bawah ini.
Ibaratkan semua ini di dalam satu server, hanya dengan satu server terdapat banyak layanan sekaligus, terlihat lebih efisien jika dibandingkan dengan Microservice, namun apakah demikian?
mari kita lihat perbandingan Microservice dan Monolithic
Untuk yang Monolithic
- Jika aplikasi makin kompleks dan penggunanya makin banyak, kenaikan biaya yg dibutuhkan lebih besar daripada jika menggunakan microservices
- Satu server untuk handle semua layanan
- Tidak bisa menggunakan module module yang tidak terinstall pada server utama. misalkan mau menggunakan no-sql atau sql, nodejs atau php
- Proses update aplikasi akan berimbas ke seluruh aplikasi.
- Seluruh Code atau component menjadi 1 server.
- Untuk scaling hanya bisa mengupgrade resource server saja.
- Latensi komunikasi antar modul sangat rendah karena berada dalam server yang sama.
Untuk yang Microservice
- Aplikasi scalable, secure dan reliable
- Setiap layanan memiliki server sendiri.
- Karena setiap layanan memiliki server sendiri, bisa dengan mudah membuat aplikasi tanpa memikirkan hubungan / ketergantungan module dengan layanan yang lain. misalkan kamu bisa membuat aplikasi dengan beberapa bahasa pemrograman.
- Proses update aplikasi hanya melingkupi layanan yang terkait.
- Codenya berbasis layanan. Kamu harus memiliki dokumentasi yang lebih dari pada infrastruktur - Monolithic
- Proses Scalingnya bisa menggunakan beberapa metode, scaling up dan scaling side
- Ada kemungkinan komunikasi antar modulenya mengalami kegagalan. Untuk itu kamu harus selalu mempersiapkan cara handlenya.
Jika kita lihat perbandingan di atas ternyata lebih efisien Microservice dalam hal upgrading, updating, kebebasan menggunakan bahasa pemrograman dll.
Dengan adanya microservice ini, setiap orang dapat dengan bebas memilih bahasa pemrograman yang mereka inginkan untuk layanan yang orang tersebut kerjakan.
Mungkin pembahasan tentang microservice segini aja, semoga bermanfaat.
Comments
Post a Comment