Pengertian Microservices
Microservices berarti membagi aplikasi menjadi layanan yang lebih kecil dan saling terhubung tidak seperti aplikasi monolitik.
Setiap microservice merupakan aplikasi kecil yang memiliki arsitektur heksagonal sendiri yang terdiri dari logika beserta berbagai adapternya. Baca Juga: Apa itu Analisis SWOT?
Pola arsitektur Microservice secara signifikan memengaruhi hubungan antara aplikasi dan database. Di dalam microservice, masing-masing services memiliki skema database tersendiri. Selain itu, services dapat menggunakan jenis database dan bahasa pemrograman yang paling sesuai dengan kebutuhannya.
Di satu sisi, pendekatan ini bertentangan dengan gagasan model data enterprise-wide. Selain itu, sering kali menghasilkan duplikasi beberapa data. Namun, memiliki skema database per service sangat penting jika ingin mendapatkan keuntungan dari layanan microservice.
Intinya microservice adalah metode dengan membagi service ke bagian yang lebih kecil dimana service-service tersebut saling berhungan satu sama lain. Selain itu, dalam setiap services yang dibuat bisa menggunakan teknologi yang berbebeda.
Karakteristik Microservices
Aplikasi scalable, secure dan reliable
Setiap layanan memiliki infrastruktur sendiri.
Karena setiap layanan memiliki infrastruktur sendiri, bisa dengan mudah membuat aplikasi tanpa memikirkan hubungan atau ketergantungan module dengan layanan yang lain.
Ada kemungkinan komunikasi antarmodule mengalami kegagalan. Untuk itu pengguna harus selalu mempersiapkan cara handlenya.
Proses update aplikasi hanya melingkupi layanan yang terkait.
Codenya berbasis layanan.
Proses Scalingnya bisa menggunakan beberapa metode, scaling up dan scaling side.
Kelebihan Microservice
Berdasarkan pengertian tentang microservice yang sudah kita baca di atas, dapat kita simpulkan bahwa microservice memiliki kelebihan sebagai berikut:
- Aplikasi scalabale, secure dan reliable.
- Setiap service berdiri sendiri.
- Maintence-nya lebih mudah.
- Tidak ada hambatan dalam menggunakan teknologi baru.
- Setiap tim developer dapat mengembangkan setiap services=-nya tanpa ada mengganggu services yang lain.
Kekurangan Microservice
- Selain memiliki banyak kelebihan, tentu microservice juga memiliki beberapa kekurangan, di antaranya adalah:
- Ketika satu entity pada database berubah maka setiap entity yang sama di setiap database service harus diubah
- Untuk beberapa kasus , sulit untuk menerapkan perubahan services, maka dari itu diperlukan perancangan yang matang.
- Deployment yang kompleks, perlu konfigurasi untuk menjalankan setiap services karena memiliki runtime yang berbeda, tidak seperti aplikasi monolitik yang memiliki sistem tinggal upload , deploy dan beres.
- Perlu automation yang tinggi dalam melakukan deployment.
Komentar
Posting Komentar