DBAtlas · Veritabanı operasyon atlası

Keyspace notifications ile key silinme ve expire olaylarını izle

RedisBakım

Komut

CONFIG GET notify-keyspace-events
# E: keyevent kanali, x: expire olaylari, g: genel komutlar (DEL, EXPIRE, RENAME):
CONFIG SET notify-keyspace-events Exg
# db 0'daki expire ve del olaylarini dinle:
redis-cli -h redis1 -p 6379 --csv PSUBSCRIBE '__keyevent@0__:expired' '__keyevent@0__:del'
# Kapat:
CONFIG SET notify-keyspace-events ""

Ne yapar?

Key'ler üzerindeki olayları (expire, del, set vb.) pub/sub kanallarına yayınlatır; böylece hangi key'in ne zaman silindiği veya süresinin dolduğu canlı izlenebilir.

Ne zaman kullanılır?

Key'lerin 'kendiliğinden kaybolduğu' şikâyetinde silen komutu veya expire'ı kanıtlamak, ya da expire olayına bağlı iş akışlarını (oturum kapanışı) beslemek için.

Dikkat

Olaylar CPU ve ağ yükü getirir; özellikle 'A' (tüm sınıflar) yoğun sistemlerde pahalıdır, yalnızca gereken sınıfları aç ve iş bitince kapat. Pub/sub fire-and-forget'tir: bağlı olmayan abone olayı kaçırır, kalıcı değildir. expired olayı TTL anında değil, key gerçekten silindiğinde (erişimde veya arka plan expire döngüsünde) üretilir.

DBAtlas'ta aç →

İlgili