Monolithic atau Microservices ? – Datacomm

Monolithic vs. Microservice dan Definisinya

Saat ini, microservices dikenal luas untuk pembagian aplikasi menjadi layanan yang lebih kecil dan saling berhubungan. Ini berbeda dari monolitik yang merupakan kebalikan dari microservices. Monolithic juga bisa diartikan sebagai satu. Monolithic Architecture adalah arsitektur untuk membuat aplikasi di mana semua komponen tidak terpisah satu sama lainnya.

Setiap microservice adalah aplikasi kecil yang memiliki arsitektur heksagonal sendiri yang terdiri dari logika dan berbagai adaptor (bahasa pemrograman, dll.). Sementara pendekatan monolitik bekerja dengan baik untuk banyak organisasi dan aplikasi, microservices menjadi semakin populer di kalangan organisasi yang membutuhkan kelincahan dan skalabilitas yang lebih besar.

Untuk lebih jelasnya, mari kita kupas dengan lebih mendalam lagi.

MONOLITHIC

Nah jika kamu sering atau setidaknya pernah membuat aplikasi, pasti kamu mengenal infrastruktur aplikasi seperti diatas.

Untuk mempermudah penjelasan, mari kita asumsikan bahwa gambar diatas adalah server. Di server ini, ada banyak layanan seperti: layanan untuk antarmuka pengguna, layanan pemrosesan data, dan sebagainya. Jika ada yang masih belum jelas maka gampangnya adalah sama seperti di server, ada layanan server web, layanan database, dan sebagainya.

MICROSERVICES

Tidak seperti monolithic, infrastruktur microService membagi layanan-layanan yang ada menjadi bagian-bagian yang lebih kecil. Misalkan ada server khusus untuk memproses layanan antrian, layanan hosting khusus untuk antarmuka pengguna, server khusus untuk manajemen database, dan sebagainya.

  Jalankan aplikasi anda di Microservice yang lebih Scalable, Secure, dan Reliable. Dapatkan informasinya sekarang!

 

Jika kita bandingkan maka bisa kita bedakan sebagai berikut :

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.

MicroService

  • Aplikasi scalable, secure dan reliable
  • Setiap layanan memiliki infrastruktur sendiri.
  • Karena setiap layanan memiliki infrastruktur 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.

Datacomm Cloud Business sebagai provider cloud terkemuka di Indonesia terus melakukan inovasi untuk memberikan layanan terbaik bagi pelanggannya, salah satunya adalah dengan layanan Container as a Service  dengan support dan lokasi Datacenter lokal, 24×7 NOC dan SOC monitoring.

Sumber referensi : article.microservices.com, juraganhosting.com, dzone.com, medium.com

  • Hands On Kubernetes Workshop
    Mengatur dan mengelola container memang bukanlah sebuah hal yang mudah, dibutuhkan skill yang memumpuni, serta management container yang lebih terotomisasi dan policy-driven untuk dapat melakukannya. Maka dari itu K8S hadir …
  • Perbandingan Zerto Site Recovery Manager & Replikasi vSphere
    Disaster Recovery di Era Virtualisasi Virtualisasi telah membuat Disaster Recovery menjadi sangat tidak rumit bagi perusahaan, besar dan kecil. Faktanya, bukanlah hal yang berlebihan untuk mengatakan bahwa virtualisasi telah membuat …
  • Microservices Adalah dan Perbedaan Monolithic Architecture
    Memanfaatkan Teknologi Microservice & Container untuk memodernisasi aplikasi menuju Cloud Native Arsitektur di Era Digital. Microservices adalah suatu framework Architecture yang dipakai sebagai model dalam pembuatan aplikasi cloud yang modern. Di …
  • Cara Kerja Kubernetes Adalah, Keuntungan, Arsitekur, Komponen
    Apa yang anda perlu ketahui tentang Kubernetes, keuntungan yang bisa di dapat dan bagaimana dengan arsitektur, komponen dan cara kerjanya. Apa itu Kubernetes (K8S) dan bagaimana cara kerjanya? Kubernetes adalah sebuah open …
  • Monolithic to Cloud Native – Microservices Migration Strategy
    Langkah yang harus di ambil untuk bisa memigrasikan Monolitik aplikasi ke Cloud Native arsitektur. Sebelum memulai dalam memodernisasi aplikasi Monolithic anda yang lama, sebaiknya anda memulai dulu dari mendalami lebih …