Redis sebagai database berbasis memori sangat menarik untuk dipelajari. Dan redis bisa digunakan untuk berbagai keperluan seperti menyimpan data sementara agar cepat diakses, dan yang saya tidak menduga ternyata bisa digunakan sebagai message broker juga. Ada fasilitasnya.
Instalasinya, kamu bisa mengunjungi situsnya. Kamu bisa menginstallnya di Linux, WSL, Docker, dan mungkin saja di Windows.
Berikut beberapa catatan penggunaan redis.
Start Service pada Terminal
Start Server : sudo service redis-server start
Menjalankan Redis CLI : redis-cli
Jika ingin mengakses terminal docker gunakan : docker exec -it redis-server redis-cli
Ketika digunakan bersama, -it
memungkinkan Anda untuk:
- Berinteraksi dengan kontainer secara real-time (dengan
-i
). - Mendapatkan terminal virtual yang nyaman untuk input dan output (dengan
-t
).
Berikut adalah perintah Redis yang lebih lengkap untuk Set/Get dan Pub-Sub, mencakup variabel biasa dan dictionary:
1. Perintah Redis untuk Set/Get
a. Variabel Biasa (String)
- Set nilai:
SET key value
Contoh:
SET name "John Doe"
- Get nilai:
GET key
Contoh:
GET name
- Set nilai dengan TTL (Time-to-Live):
SET key value EX seconds
Contoh:
SET session_token "abc123" EX 60
- Cek apakah key ada:
EXISTS key
Contoh:
EXISTS name
b. Dictionary (Hash)
- Set nilai pada hash (dictionary):
HSET hash_name field value
Contoh:
HSET user:1001 name "Alice" HSET user:1001 age "30"
- Get nilai dari hash:
HGET hash_name field
Contoh:
HGET user:1001 name
- Get semua field dan nilai dari hash:
HGETALL hash_name
Contoh:
HGETALL user:1001
- Cek apakah field ada di hash:
HEXISTS hash_name field
Contoh:
HEXISTS user:1001 name
- Hapus field dari hash:
HDEL hash_name field
Contoh:
HDEL user:1001 age
2. Perintah Redis untuk Pub-Sub
a. Subscribe ke topik
- Subscribe ke satu topik:
SUBSCRIBE topic_name
Contoh:
SUBSCRIBE notifications
- Subscribe ke beberapa topik:
SUBSCRIBE topic1 topic2
Contoh:
SUBSCRIBE news updates
b. Publish pesan ke topik
- Publish pesan:
PUBLISH topic_name message
Contoh:
PUBLISH notifications "New user signed up!"
c. Pattern Subscribe
- Subscribe ke topik dengan pola (wildcard):
PSUBSCRIBE pattern
Contoh:
PSUBSCRIBE news.*
- Publish pesan ke topik yang cocok dengan pola:
PUBLISH news.world "Breaking news: World event!"
Contoh Kasus: Kombinasi Pub-Sub dan Dictionary
Misalkan Anda ingin mengirim pesan tentang user baru:
- Set data user di hash:
HSET user:1002 name "Bob" age "25"
- Publish notifikasi user baru:
PUBLISH notifications "User Bob has signed up"
- Subscribe ke notifikasi (di terminal lain):
SUBSCRIBE notifications
Dengan perintah di atas, Anda bisa memanfaatkan Redis baik untuk menyimpan data maupun membangun sistem komunikasi real-time. 😊