Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Microservice: Revolusi Arsitektur Software Yang...

Microservice: Revolusi Arsitektur Software Yang Mengubah Cara Kita Bekerja

Fikih Firmansyah

February 24, 2024
Tweet

More Decks by Fikih Firmansyah

Other Decks in Technology

Transcript

  1. Microservice: Revolusi Arsitektur Software Yang Mengubah Cara Kita Bekerja Medan

    Fikih Firmansyah Backend Engineer, Xtend Indonesia Google Developer Groups Medan
  2. Introduction • Backend Engineer at Xtend Indonesia • CTO TestMate

    • Member of Masyarakat Bioinformatika dan Biodiversitas Indonesia • Google Developer Groups Medan • Open source enthusiast and Communities Fellow • Tech Background: Backend stuff, IaaS & PaaS Cloud, DevOps, more at https://fikihfirmansyah.my.id
  3. Prinsip Dasar 02 . Solusi dan Best Practices TABLE OF

    CONTENTS Definisi Microservice 01 Tantangan dalam Mengadopsi Microservice 05 04 Arsitektur Microservice 03 Studi Kasus 06 Kesimpulan 07
  4. Pendahuluan Latar Belakang • Perkembangan teknologi informasi telah mengubah paradigma

    dalam pengembangan perangkat lunak. • Arsitektur monolitik mulai dihadapkan pada keterbatasan dalam mengakomodasi kebutuhan aplikasi yang semakin kompleks dan skalabilitas yang dinamis. • Microservice muncul sebagai alternatif yang menjanjikan dalam mengatasi tantangan tersebut, dengan menawarkan pendekatan yang terdistribusi dan modular. Tujuan • Memperkenalkan konsep dan prinsip dasar dari arsitektur microservice. • Membandingkan arsitektur microservice dengan pendekatan monolitik untuk memahami perbedaan, kelebihan, dan kekurangannya. • Menyoroti tantangan dan solusi dalam mengadopsi arsitektur microservice, serta praktik terbaik yang dapat membantu kesuksesan implementasi. • Melakukan analisis studi kasus implementasi microservice untuk memperkuat pemahaman peserta.
  5. MICROSERVICE Definisi Microservice Microservices adalah metode secara khusus untuk membuat

    suatu aplikasi yang terdiri atas sejumlah unit layanan/service dan saling terhubung. Di setiap unit layanan pada aplikasi ini menjalankan fungsi yang berbeda, namun mendukung satu dengan lainnya. Microservices memiliki interface dan juga operasi yang sudah terdefinisi dengan baik.
  6. Konsep Monolitik • Arsitektur monolitik adalah pendekatan tradisional dalam pengembangan

    perangkat lunak di mana seluruh aplikasi dibangun sebagai satu entitas tunggal. • Aplikasi monolitik terdiri dari komponen-komponen yang saling terhubung dan tergantung satu sama lain, seringkali dengan kode yang besar dan kompleks. Pendahuluan
  7. Kelebihan Monolitik • Mudah dipahami dan diimplementasikan, terutama untuk aplikasi

    kecil. • Tidak memerlukan kompleksitas tambahan dalam manajemen, pemantauan, dan orkestrasi. • Performa yang lebih baik untuk aplikasi dengan skala kecil hingga menengah. Pendahuluan
  8. Kekurangan Monolitik • Kesulitan dalam memperbaiki dan memelihara aplikasi karena

    segala perubahan harus dilakukan pada satu kode sumber. • Tidak fleksibel dalam mengadopsi teknologi baru karena semua komponen terkait satu sama lain. • Rentan terhadap kegagalan sistem karena satu kesalahan dapat mempengaruhi keseluruhan aplikasi. Pendahuluan
  9. Kelebihan Microservice • Skalabilitas yang lebih baik karena setiap layanan

    dapat diperbesar secara independen. • Pembaruan dan pengembangan yang lebih cepat karena setiap layanan dapat dikembangkan, diuji, dan di deploy secara terpisah. • Fleksibilitas dalam pemilihan teknologi karena setiap layanan dapat menggunakan teknologi yang paling sesuai dengan kebutuhan spesifiknya. Pendahuluan
  10. Kekurangan Microservice • Kompleksitas tambahan dalam manajemen, pemantauan, dan orkestrasi

    layanan-layanan yang terpisah. • Memerlukan infrastruktur yang lebih canggih untuk otomatisasi, penyusunan ulang, dan orkestrasi layanan. • Memerlukan kerja sama dan koordinasi yang baik antara tim pengembangan untuk memastikan integrasi yang lancar antara layanan-layanan yang berbeda. Pendahuluan
  11. PRINSIP DASAR Skalabilitas Independen Terdistribusi MICRO -services Tidak ada yang

    REQUEST apapun ke satu service. Service tidak REQUEST apapun service yang lain Service tidak kenal service yang lain.
  12. • Fleksibilitas dan Skalabilitas. • Kemudahan Maintenance. • Resiliensi Terhadap

    Kesalahan. • Development Sistem yang Efisien. Karakteristik & Manfaat Utama
  13. KESIMPULAN Arsitektur microservice telah membawa revolusi dalam pengembangan perangkat lunak,

    menawarkan manfaat seperti skalabilitas, pembaruan cepat, dan fleksibilitas teknologi Sementara juga memunculkan tantangan seperti kompleksitas manajemen dan konsistensi data yang perlu diatasi dengan solusi dan praktik terbaik. end
  14. Microservice: Revolusi Arsitektur Software Yang Mengubah Cara Kita Bekerja Medan

    Fikih Firmansyah Backend Engineer, Xtend Indonesia Google Developer Groups Medan