Apa itu Apache Pulsar?

Langit malam berbintang di atas pegunungan yang tertutup salju dan badan air.

Penyusun

Alice Gomstyn

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

Apa itu Apache Pulsar?

Apache PULSAR adalah platform pengiriman pesan dan streaming terdistribusi cloud-native, sumber terbuka. Meskipun Apache Kafka telah lama menjadi standar untuk streaming acara dan pemrosesan data secara real-time, Apache Pulsar telah muncul sebagai alternatif yang kuat selama dekade terakhir.

 

Ketika perusahaan menghadapi lingkungan TI dan data yang semakin kompleks, mereka mengandalkan platform perpesanan dan streaming untuk memastikan pertukaran data yang cepat dan andal di seluruh aplikasi, sistem, dan layanan. Dengan analitik data real-time yang menjadi pendorong penting dari insight yang dapat ditindaklanjuti, mempercepat kecepatan streaming data dan pemrosesan data adalah prioritas utama. Menurut data IDC 2025, perusahaan yang disurvei menunjukkan bahwa 63% contoh penggunaan harus memproses data dalam hitungan menit agar bermanfaat.

PULSAR menggabungkan fitur-fitur sistem perpesanan tradisional dengan sistem berlangganan, sehingga sangat cocok untuk contoh-contoh penggunaan seperti layanan mikro, pesan instan, dan integrasi data. Sejumlah kemampuan dan keunggulan memungkinkan fleksibilitas Pulsar, termasuk geo-replikasi, multi-penyewaan, dan penyimpanan berjenjang.

Awalnya dikembangkan di Yahoo dan secara terbuka (source source) oleh Apache Software Foundation pada tahun 2016, Apache Pulsar kini mengelola ratusan miliar acara per hari di seluruh organisasi besar.

Berita teknologi terbaru, didukung oleh insight dari pakar

Ikuti perkembangan tren industri yang paling penting—dan menarik—di bidang AI, otomatisasi, data, dan lainnya dengan buletin Think. Lihat Pernyataan Privasi IBM.

Terima kasih! Anda telah berlangganan.

Langganan Anda akan disediakan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM kami untuk informasi lebih lanjut.

Perpesanan dan streaming acara

Memahami pentingnya Apache Pulsar dimulai dengan pandangan yang jelas tentang cara kerja platform pengiriman pesan dan streaming acara.

Perpesanan

Pesan adalah paket data yang dibuat aplikasi untuk digunakan aplikasi lain. Paket-paket ini digunakan dalam urutan transmisinya, sampai aplikasi yang mengonsumsinya memprosesnya.

Sistem pesan memfasilitasi pertukaran pesan-pesan tersebut. Sistem perpesanan tradisional adalah middleware (juga disebut middleware berorientasi pesan, atau MOM). Solusi ini biasanya mendukung dua pola distribusi pesan: pesan point-to-point dan pesan berlangganan.

Dalam pesan point-to-point, satu aplikasi (disebut pengirim) mengirimkan pesan ke apa yang dikenal sebagai antrean pesan, yang menyimpan pesan. Kemudian, aplikasi lain (disebut penerima atau konsumen) menerima pesan dari antrean dan memprosesnya. Setiap pesan harus dikonsumsi hanya sekali.

Dalam pesan publikasi/berlangganan, atau pesan pub/sub, aplikasi yang menghasilkan pesan disebut penerbit. Aplikasi yang menggunakannya disebut sebagai pelanggan. Setiap pesan diterbitkan ke kategori yang dikenal sebagai topik, dan setiap aplikasi yang berlangganan topik tersebut menerima salinan semua pesan yang diterbitkan ke sana.

Partisi dan topik yang dipartisi dapat mempercepat pemrosesan pesan. Pesan yang dipublikasikan ke topik yang dipartisi didistribusikan ke beberapa broker.

Pesan Pub/sub dirancang untuk komunikasi gaya siaran, “satu ke banyak”. Pesan point-to-point—seperti namanya—bertukar informasi antara satu pengirim dan satu penerima.

Di antara sistem pesan tradisional, RabbitMQ, platform sumber terbuka, sering disebut sebagai yang paling populer.

Streaming acara

Platform streaming acara menangkap data real-time dari aplikasi, database, dan perangkat IoT. Kemudian mengangkut data ke berbagai tujuan untuk segera diproses, analitik, atau penyimpanan.

Dikenal karena skalabilitasnya, platform streaming acara dapat memesan aliran catatan ke dalam topik dan menyimpannya untuk jumlah waktu yang telah ditentukan. Namun, tidak seperti sistem perpesanan tradisional, platform streaming acara tidak dapat menjamin pengiriman pesan atau melacak konsumen mana yang telah menerima pesan. Mereka mengandalkan pub/sub pesan daripada distribusi pesan point-to-point dan menawarkan lebih sedikit fleksibilitas dalam perutean pesan.

Di antara platform streaming acara, Apache Kafka adalah yang paling banyak digunakan.

Gabungan Para Pakar | 28 Agustus, episode 70

Decoding AI: Rangkuman Berita Mingguan

Bergabunglah dengan panel insinyur, peneliti, pemimpin produk, dan sosok kelas dunia lainnya selagi mereka mengupas tuntas tentang AI untuk menghadirkan berita dan insight terbaru seputar AI.

Fitur utama Apache Pulsar

Apache Pulsar menggabungkan kemampuan platform seperti RabbitMQ dan Apache Kafka menjadi satu solusi. Ini dapat melakukan streaming acara dan mengirimkan pesan ke banyak konsumen seperti Kafka; mendukung antrean dan dapat mengirim pesan ke konsumen tunggal seperti RabbitMQ.

Namun, Pulsar lebih dari sekadar jumlah pendahulunya. Yahoo awalnya mengembangkan platform ini untuk memenuhi kebutuhan organisasinya sendiri, sehingga keunggulan kompetitif tertentu telah dibangun sejak awal. Dalam tahun-tahun sejak itu, perbaikan lain telah membawa Pulsar sebagai platform pengiriman pesan dan streaming berkinerja tinggi.

Saat ini, beberapa fitur paling menarik dari Apache Pulsar meliputi:

  • Multi-sewa
  • Replikasi geografis
  • Arsitektur multi-tingkat
  • Penyimpanan berjenjang
  • Konektor IO
  • Langganan yang fleksibel

Multipenyewaan

Multi-penyewaan adalah salah satu fitur asli yang membedakan Apache Pulsar dari platform lain. Dalam arsitektur perangkat lunak multi-penyewa, satu contoh aplikasi perangkat lunak (dan database dan perangkat kerasnya yang mendasarinya) melayani beberapa penyewa (atau akun pengguna). Manfaat multi-penyewaan termasuk pengaturan sistem yang disederhanakan, konfigurasi, pemeliharaan, dan penerapan aplikasi serta penghematan biaya.

Di Apache Pulsar, tim yang berbeda dapat berbagi sistem pesan dengan aman. Setiap penyewa memiliki autentikasi, otorisasi, dan kebijakannya sendiri. Penyewa dapat dibagi lagi menjadi apa yang dikenal sebagai ruang nama (pengelompokan topik logis). Divisi ini memudahkan untuk mendukung lingkungan yang berbeda—seperti pengembangan, pemilahan, dan produksi—dalam satu penyewa tunggal.

Replikasi geografis

Mereplikasi pesan ke lokasi jarak jauh penting untuk mendukung pemulihan bencana atau untuk memungkinkan aplikasi beroperasi pada skala global. Tidak seperti platform lain, Pulsar tidak memerlukan konfigurasi atau add-on yang rumit untuk memberi daya pada kemampuan ini.

Dengan geo-replikasi, aplikasi dapat terhubung ke klaster PULSAR lokal dan masih mengirim ke klaster di seluruh dunia. Jika produser menerbitkan pesan ke sebuah topik dalam ruang nama yang direplikasi, pesan itu secara otomatis direplikasi ke lokasi geografis jarak jauh yang telah dikonfigurasi.

Arsitektur multi-tingkat

Arsitektur pulsar memisahkan komponen pengiriman pesan (broker pesan) dan lapisan penyimpanan pesan. Pesan disimpan oleh Apache BookKeeper, pemimpin yang dikenal dalam solusi penyimpanan log yang tahan lama.

Untuk meningkatkan kinerja, BookKeeper mendistribusikan data ke beberapa server yang dikenal sebagai bookies. (Metadata untuk buku besar BookKeeper disimpan di Apache ZooKeeper.) Bookies dapat ditambahkan sesuai kebutuhan, menghasilkan skalabilitas horizontal yang cocok untuk menangani volume data besar. Arsitektur ini memungkinkan Pulsar menyediakan latensi rendah sekaligus mentransfer data dalam jumlah besar dalam waktu singkat—yang dikenal sebagai throughput tinggi.

Arsitektur Pulsar juga dianggap sebagai arsitektur cloud-native. Baik Pulsar maupun komputasi cloud memisahkan komputasi dari penyimpanan. Selain itu, PULSAR dapat diterapkan pada Kubernetes, platform orkestrasi kontainer sumber terbuka yang merupakan blok pembangun infrastruktur cloud modern.

Penyimpanan berjenjang

Apache Pulsar juga dilengkapi penyimpanan berjenjang. Kemampuan ini memungkinkan data backlog lama dipindahkan dari Apache BookKeeper ke penyimpanan jangka panjang yang lebih murah, selagi tetap memungkinkan klien PULSAR untuk mengakses backlog.

Penyimpanan berjenjang PULSAR menggunakan Apache jclouds (sumber terbuka multi-cloud toolkit untuk platform Java) untuk mendukung penyimpanan jangka panjang melalui solusi seperti AWS S3 (Amazon S3), GCS (Google Cloud Storage), Azure, dan Aliyun.

Konektor IO

Apache Pulsar dapat dengan mudah digunakan dengan sistem eksternal berkat konektor Pulsar IO. Konektor ini bertindak sebagai jembatan antara Pulsar dan sistem lain, seperti mesin pemrosesan aliran, API pipeline data, dan platform perpesanan lainnya.

Konektor Pulsar tersedia dalam dua jenis: sumber dan sink. Konektor sumber mengirimkan data dari sistem eksternal ke Pulsar, sedangkan konektor sink melakukan hal yang sebaliknya, yaitu mengirimkan data dari Pulsar ke sistem eksternal. Konektor Pulsar yang umum digunakan termasuk MySQL, MongoDB, Cassandra, RabbitMQ, Kafka, Flume dan Redis.

Langganan fleksibel

Apache Pulsar mendukung empat jenis langganan yang berbeda1 untuk membantu pengguna mengonfigurasi pola pengiriman pesan:

  • Eksklusif: Hanya satu konsumen yang diizinkan menerima pesan melalui langganan.

  • Pengalihan: Ketika transmisi pesan ke konsumen utama yang ditunjuk gagal, pesan akan dikirim ke konsumen siaga untuk diproses.

  • Dibagikan: Pesan dikirimkan secara "round robin" atau secara perputaran/siklus, dengan beberapa konsumen menerima pesan, tetapi setiap pesan dikirimkan ke satu konsumen.

  • Kunci yang dibagikan: Pesan ditetapkan ke sebuah kunci pesan, yang membantu menghubungkan pesan-pesan terkait. Pesan dengan kunci yang sama dikirim ke konsumen dalam urutan tertentu.

Fitur tambahan Apache Pulsar

Fitur Pulsar penting lainnya termasuk:

Penyeimbangan beban broker: Pulsar memantau penggunaan CPU, memori, dan jaringan broker PULSAR dan memindahkan beban kerja seperlunya untuk mengoptimalkan keseimbangan dan menghindari beban berlebih pada masing-masing broker.

Registri skema: Registri skema Pulsar memungkinkan klien Pulsar untuk mengunggah skema data per topik untuk memastikan bahwa produsen dan konsumen menggunakan format pesan yang kompatibel.

Pustaka klien: Pustaka klien adalah fungsi dan prosedur yang dibangun sebelumnya yang menyederhanakan interaksi antara aplikasi dan API, database , dan layanan. Pulsar mendukung pustaka khusus bahasa pemrograman (termasuk pustaka untuk Java, C++, Python, dan Node.js) dan pustaka yang bersifat agnostik(REST dan WebSocket).

Retensi pesan: Sistem tradisional menghapus pesan setelah pesan tersebut digunakan. Pulsar memungkinkan pengguna untuk mengatur kebijakan retensi untuk menyimpan pesan bahkan setelah mereka digunakan—fitur yang dapat mendukung model arsitektur berbasis peristiwa.

Contoh penggunaan Apache Pulsar

Contoh penggunaan dari Apache Software Foundation berikut ini membantu mengilustrasikan utilitas dan fleksibilitas Pulsar.2

Konsolidasi platform perpesanan

Apache Pulsar sering kali menjadi platform pilihan ketika perusahaan memutuskan untuk mengejar konsolidasi teknologi pesan karena mendukung beberapa contoh penggunaan pesan (termasuk antrean pesan dan streaming) dan multi-penyewaan, yang memungkinkan beberapa tim untuk menggunakannya dengan cara yang melayani mereka dengan cara yang terbaik.

Ketahanan kegagalan untuk aplikasi yang sangat penting

Perusahaan yang ingin meminimalkan kemungkinan kehilangan data untuk aplikasi penting—seperti transaksi keuangan—dapat memanfaatkan Apache Pulsar untuk fitur-fitur ketahanan kegagalannya. Yaitu, pesan yang diumpankan melalui Pulsar direplikasi ke beberapa node BookKeeper. Selain itu, pesan tidak hilang bahkan ketika perangkat keras gagal berfungsi.

Komunikasi layanan mikro

Apache Pulsar mendukung komunikasi konstan yang diperlukan antara layanan mikro melalui panggilan API tidak langsung. Layanan dapat mengirim pesan ke topik yang telah diikuti layanan lain. Sementara sistem perpesanan lain dapat menyediakan kemampuan ini, skalabilitas horizontal Pulsar membedakannya—platform dapat ditingkatkan dalam hitungan menit untuk mengakomodasi aliran permintaan yang besar.

Dukungan antrean tugas

Sistem perpesanan biasanya mendukung antrean tugas—sistem yang mengatur eksekusi asinkron pekerjaan latar belakang tanpa menghambat kinerja aplikasi. Apache Pulsar mendukung sistem antrean tugas melalui langganan bersama—yang mendistribusikan pesan ke beberapa konsumen—dan kemampuan pengakuan pesan, yang mengonfirmasi penyelesaian tugas.

Solusi terkait
Alat dan solusi analitik

Untuk berkembang, perusahaan harus menggunakan data untuk membangun loyalitas pelanggan, mengotomatiskan proses bisnis, dan berinovasi dengan solusi yang didorong oleh AI.

Jelajahi solusi analitik
Layanan konsultasi data dan analitik

Buka nilai data perusahaan dengan IBM Consulting, membangun organisasi berbasis insight yang memberikan keuntungan bisnis.

Temukan layanan analitik
IBM Cognos Analytics

Memperkenalkan Cognos Analytics 12.0, wawasan yang didukung AI untuk pengambilan keputusan yang lebih baik.

Jelajahi Cognos Analytics
Ambil langkah selanjutnya

Untuk berkembang, perusahaan harus menggunakan data untuk membangun loyalitas pelanggan, mengotomatiskan proses bisnis, dan berinovasi dengan solusi yang didorong oleh AI.

Jelajahi solusi analitik Temukan layanan analitik
Catatan kaki

"Pesan." The Apache Software Foundation. Diakses pada 4 Agustus 2025.

"Contoh Penggunaan Pulsar." The Apache Software Foundation. Diakses pada 4 Agustus 2025.