Kafka Keajaiban Di Backend

Kafka Keajaiban Di Backend

Saat ini, semua orang yang menggunakan aplikasi Cloud mengharapkan respons real time. Dan Kafka adalah keajaiban di Backend.


          Apa itu KAFKA?

Apache Kafka merupakan platform terdistribusi untuk data streaming. Pada dasarnya, Apache Kafka merupakan sistem publish/subscribe messaging, dimana terdapat satu atau lebih sistem yang men-generate data untuk suatu topik tertentu secara real-time di Apache Kafka (disebut sebagai Producers).

Kemudian, topik tersebut dapat dibaca oleh satu atau lebih sistem yang membutuhkan data-data dari topik tersebut secara real-time (disebut sebagai Consumers).
 

     1. Feature Apache Kafka

  • Producer merupakan proses atau sistem yang dapat mempublikasikan data ke suatu topik.
  • Consumer merupakan proses atau sistem yang dapat melakukan subscription ke satu atau lebih topik dan mengolah data-data dari topik tersebut.
  • Topic merupakan nama dari sebuah feed.
  • Broker merupakan instance Apache Kafka yang berjalan di satu mesin.
  • Cluster merupakan kelompok dari broker-broker yang saling bekerjasama.
  • Partition merupakan pengelompokkan data topic yang dipecah menjadi bagian-bagian kecil. Misalnya, suatu topik menyimpan informasi user login, maka data-data pada topik dapat dibagi bedasarkan huruf awal dari username.
  • Offset merupakan array index yang digunakan oleh Apache Kafka sebagai unique identifier untuk setiap data pada satu partisi.
     

     2. Kelebihan Utama Apache Kafka

  • Distributed

Apache Kafka dapat menyimpan, menerima dan mengirim data atau pesan dari berbagai node.

  • Horizontally-scalable

Apache Kafka dapat bekerja dengan baik dalam suatu kelompok atau cluster, sehingga dengan bertambahnya volume dan kecepatan aliran data yang harus diproses, maka kita hanya perlu menambah mesin baru saja pada cluster tanpa harus melakukan vertical-scaling.

  • Fault-tolerant

Salah satu kelemahan dari sistem sentralisasi (tidak terdistribusi) adalah Single Point of Failure (SPoF). Sedangkan sistem terdistribusi dirancang untuk mengakomodasi jika terjadi masalah pada satu atau lebih node, maka node yang lain dapat menggantikan posisi node yang bermasalah tersebut, sehingga keseluruhan sistem tidak terganggu. Pada Apache Kafka, terdapat satu partition leader yang berperan sebagai node utama, dimana partition leader mereplikasi data yang diterimanya ke node-node lainnya,  yang disebut sebagai followers.

Berita Rekomendasi

4 Point Penting yang Harus Diperhatikan Dalam Menjaga Keamanan Aplikasi

11/11/2024

4 Point Penting yang Harus Diperhatikan Dalam Menjaga Keamanan Aplikasi

Di era industry 4.0 saat ini semakin banyak bisnis startup bisnis berbasis digital bermunculan, mereka hadir dengan bisnis yang membutuhkan implementasi teknologi handal. Teknologi yang mendukung kemampuan akses dari lintas…

Lihat
How Important Employee Engagement

30/09/2024

How Important Employee Engagement

Anda menginginkan karyawan pekerja keras yang secara aktif terlibat dengan pekerjaan yang mereka lakukan. Anda dapat menciptakan budaya keterlibatan organisasi atau disebut dengan Employee Engagement dengan melakukan 5 hal berikut:…

Lihat
Tools Front End Serta Config dan Monitoring Server untuk Memulai Aplikasi

11/11/2024

Tools Front End Serta Config dan Monitoring Server untuk Memulai Aplikasi

Pada sesi Training Assessment Programmer Intermediate ada beberapa materi yang membantu dalam hal pekerjaan serta pengetahuan baru dalam meningkatkan hardskill khususnya bagi saya sendiri. Yang pertama pada saat pembahasan materi tentang front-end…

Lihat