Redis Pub/Sub Nedir?

Eren Yılmaz
2 min readJan 6, 2022

Merhaba dostlar, yeni bir içerik ile karşınızdayım. Uzun bir zamandır redis üzerinde çalışıyorum diyebilirim, ancak son zamanlarda redis üzerinde var olduğunu yeni öğrendiğim, oldukça basit ve yararlı olabilen pub/sub mekanizması üzerinde duracağız.

Redis ile daha önce çalıştıysanız, ne kadar faydalı bir bileşen olduğunu biliyorsunuzdur. Temelde bir NoSql veritabanı olan redis, geliştirdiğimiz projeler üzerinde çok hızlı veri okuma-yazma işlemleri yapmamızı sağlamakta, ve bize distributed caching yapısı sunmakta.

Şimdi pub/sub yapısı üzerine konuşalım. İsmi “Publisher” ve “Subscriber” kelimerinin kısaltmasından oluşan bu yapı, aslında redis içerisinde bir kanal mekanizmasıdır. İki ucu açık bir kanal düşünün. Bu kanalın bir ucundan publisherlar mesaj gönderebilmekte, ve diğer ucuncan subscriberlar mesajları tüketebilmekte. Bir kanalı birden fazla subscriber dinlebilmekte. Bu yapıyı aşağıdaki grafikte detaylıca görebiliriz.

Şimdi 3 adet konsol uygulaması oluşturarak, bahsettiğimiz pub/sub yapısını uygulayalım. Uygulamalardan birisi publisher, diğer ikisi ise subscriber görevi görecektir.

Öncelikle üç adet konsol uygulaması oluşturuyoruz , tüm uygulamalar için .Net platformunda yer alan “StackExchange.Redis” paketini ekliyoruz.

Şimdi Publisher uygulamamızın kodlamasını gerçekleştirelim.

Ardından diğer iki Subscriber uygulamamızı kodlayalım.

Böylece uygulamamızı tamamlamış olduk. Uygulamaları eş zamanlı ayağa kaldırdığımızda, publisher üzerinden publish edilen mesajların kanalları dinleyen subscriberlara iletildiğini görebilirsiniz.

Kendinize iyi bakın, başka bir makalede görüşmek üzere. 😊

--

--

Eren Yılmaz

Passionate Software Developer. Sharing Blogs and Projects Here. links.dev/erenyilmaz