News & Events

Bagaimana Cara Beralih dari Proses Batch-Based ke Event-Driven Microservices?

Published on August 11, 2020

Pada umumnya industri-industri seperti layanan finansial, pemerintahan, telekomunikasi, manufaktur dan lain-lain pernah atau masih memiliki sistem yang berarsitekturkan monolitik dan menggunakan Service Oriented Architecture (SOA) untuk mengorkestrasikan setiap proses didalamnya. Batch processing membutuhkan waktu dengan mengakumulasi semua proses transaksi terlebih dahulu untuk kemudian disimpan kedalam Master Data Management (MDM). Lain halnya dengan event-driven microservices, setiap event terjadi disebuah sistem maka seluruh komponen yang ada akan mengetahuinya secara real-time.

Bagaimana Cara Beralih dari Proses Batch-Based ke Event-Driven Microservices?

Beberapa tahun belakangan ini, mayoritas industri mulai beralih dari arsitektur monolitik ke arsitektur event-driven (EDA). Hal ini dikarnakan kebutuhan akan real-time enterprise, event-driven microservices, big data, Artificial Intelligent/Machine Learning dan juga Internet of Things. Ditambah dengan keberadaan message-oriented middleware dan juga Application Programming Interface (API) berbasis web atau lebih dikenal dengan REST memungkinkan industri saat ini bisa mencapai better customer experience, better agility, future proof (cloud native) maupun innovation backbone (API first, AI/ML, IoT backbone).

Bagaimana cara beralih dari sistem monolitik ke event-driven microservices?

Pada pembahasan kali ini kita akan mengambil contoh kasus sistem perpajakan yang mana umum ada disetiap negara. Sebagai gambaran, sistem perpajakan dikembangkan pada satu atau dua dekade kebelakang yang artinya sistem masih bersifat silo (tidak bisa bekerja sama dengan sistem lain) serta sulit untuk beralih. Secara umum sistem perpajakan masih menganut arsitektur monolitik dan SOA untuk mengorkestasi layanan. Berikut adalah gambaran arsitektur batch-based pada sistem perpajakan.

Bagaimana Cara Beralih dari Proses Batch-Based ke Event-Driven Microservices?

Pada dasarnya ada tiga aplikasi monolitik pada diagram diatas yaitu proses pemeriksaan pajak, menerbitkan hasil pemeriksaan dan surat resmi pajak. Untuk beralih ke event-driven architecture, dibutuhkan sebuah broker (detail bisa dilihat pada link berikut) http://www.myspsolution.com/news-events/bagaimana-menkoreografikan-bisnis-digital-dengan-solace-pubsub-event-broker/ untuk mengkoreografikan microservices. Berikut adalah gambaran solusi dari microservices yang bisa diterapkan kedalam sistem microservices dengan konteks sistem perpajakan dalam rangka beralih dari sistem monolitik.

Bagaimana Cara Beralih dari Proses Batch-Based ke Event-Driven Microservices?

Catatan: event broker menggunakan produk solace pubsub+

1. Elastic scalability, load balancing and throttling

Ada beberapa hal yang menjadi kelebihan event broker seperti kemapuannya untuk mengenali jika customer baru terhubung dengan subscription (aplikasi client) yang sama. Mampu membagi tugas (load balancing) ke berbagai aplikasi (instance) yang sama. Sama halnya dengan REST API yang bisa menentukan skalabilitas secara otomatis dengan API gateway. Selain itu event broker juga bisa mengetahui kemampuan aplikasi client dalam mengolah setiap proses dengan tidak membanjiri instance dengan banyak request atau event sekaligus.

Bagaimana Cara Beralih dari Proses Batch-Based ke Event-Driven Microservices?

2. Microservices serving independent tax function within a business environment

Selanjutnya untuk mengkalkulasikan pajak, microservices bisa dibagi menjadi 3 bagian yaitu kalkulasi pajak properti, kalkulasi pemasukan seseorang dan pajak penambahan nilai.

Bagaimana Cara Beralih dari Proses Batch-Based ke Event-Driven Microservices?

Catatan: event broker menggunakan produk solace pubsub+

3. Keunggulan event-driven microservices dibanding arsitektur monolitik

  • Pada sistem monolitik, arsitektur diatas dipisahkan dengan fungsi "jika-maka" (logika pemograman).
  • Memisahkan setiap microservices untuk memudahkan sebuah unit bisnis fokus dibidangnya.
  • Tidak memberikan efek ke microservices yang lain ketika terjadi perubahan.
  • Loosly coupled (terikat satu sama lain tanpa ketergantungan).
  • Menggukan topik untuk routing event ke setiap microservices dalam rangka memilih event yang hanya dibutuhkan saja.
  • Setelah semuanya berjalan, pengembangan sistem baru mudah dilakukan dengan event portal.

Baca juga:Membuat Integrasi Antar Aplikasi Multi-Protokol dengan Message Broker Solace

Sumber: Solace

PT Strategic Partner Solution

  The Bellezza Shopping Arcade
    2nd Floor Unit SA15-16
    Jl. Arteri Permata Hijau, Kec. Kby. Lama
    DKI Jakarta 12210
  +62 812 8700 0879
  info@myspsolution.com

NETWORKING

Bandung

  Jl. Jend. Sudirman No. 757
    Bandung 40212
(62-22) 603 0590 (Hunting)
(62-22) 603 0967

Medan

  Kawasan Industri Medan Star
    Jl. Pelita Raya I Blok F No. 5
    Tanjung Morawa Km 19,2
    Deli Serdang 20362
  (62-61) 7940800
  (62-61) 7941990

Semarang

  Jl. Tambak Aji I / 6
    Komp. Industri Guna Mekar
    Semarang 50185
  (62-24) 866 3521
  (62-24) 866 3529

Surabaya

  Jl. Ngemplak No. 30
    Komplek Ambengan Plaza
    Blok B 35-37
    Surabaya 60272
  (62-31) 531 9635 (Hunting)
  (62-31) 531 9634

Lampung

  Perumahan Gunung Madu Plantation
    Jalan Pulau Morotai Blok B No. 1
    Kecamatan Sukarame - Tanjung Baru
    Bandar Lampung

Surakarta

  Jalan Melati No. 2,
    Kelurahan Purwosari
    Laweyan, Surakarta

Palembang

  Komplek Ilir Barat Permai
    Blok D.I. No. 31
    Kelurahan 24 Ilir, Palembang

Samarinda

  Jalan Ir. Sutami, Pergudangan Tahap II
    Blok S No.3B
    Karang Asam, Samarinda

Makassar

  Jalan Ir. Sutami,
    Komplek Pergudangan Parangloe Indah
    Blok C-II 3/6, Makassar

Pontianak

  Jalan Raya Wajok Hilir Km. 15,65
    Siantan, Pontianak