Kodeloka
  1. Kodeloka
  2. Kelas Redis
  3. Materi

Advanced ยท Modul 11 dari 21

Redis Publish & Subscribe (Pub/Sub)

Membangun sistem komunikasi pesan terpisah (Decoupled Messaging System) secara real-time dengan PUBLISH dan SUBSCRIBE.

๐Ÿ“Œ Ringkasan Eksekutif Modul:
Redis Pub/Sub mengimplementasikan pola perpesanan di mana Publisher mengirim pesan ke Channel dan Subscriber mendengarkan Channel secara real-time.

1. Konsep Pub/Sub (Publish & Subscribe)

Publish/Subscribe (Pub/Sub) adalah pola arsitektur komunikasi terdekopel di mana pengirim pesan (Publisher) tidak mengirimkan pesan langsung ke penerima tertentu. Sebaliknya, Publisher mempublikasikan pesan ke sebuah topik/saluran bernama Channel, dan penerima (Subscriber) mendaftarkan diri ke Channel tersebut untuk menerima pesan secara instan.

2. Perintah Utama Pub/Sub

redis-cli (Terminal Subscriber)
# Client A mendengarkan channel 'news:sports'
SUBSCRIBE news:sports

# Client B mendengarkan channel dengan wildcard pattern (PSUBSCRIBE)
PSUBSCRIBE orders.*    # Mendengarkan orders.created, orders.paid, dll.
redis-cli (Terminal Publisher)
# Client C mempublikasikan pesan ke channel
PUBLISH news:sports "Indonesia menang dalam turnamen e-sports!"
PUBLISH orders.created "Order ID #9921 berhasil dibuat"
๐Ÿ’ก Karakteristik "Fire-and-Forget":
Pub/Sub bawaan Redis bersifat fire-and-forget. Artinya, pesan tidak disimpan di memori atau disk. Jika Subscriber sedang offline saat Publisher mengirim pesan, Subscriber tidak akan menerima pesan lampau tersebut. (Jika butuh persistence pesan, gunakan tipe data Redis Stream).