Rabbitcache Hakkında İlk Paylaşım

Bu yıl için kendi adıma planladığım bir kaç proje vardı, ve işimden artan vakitlerde sadece bu projelere odaklanmak üzere karar almıştım. Özel hayatımda aldığım bu tarz kararları genelde çok uzun süre devam ettiremiyorum, ufak aksaklıklar olsa da bu sefer oldukça ümitli bir durumdayım. Saat gecenin ikisi olmuşken bu yazıyı yazıyor olmam bu kararlılığımın bir göstergesi olarak kalsın bir köşede.

Lafı uzatmayacağım. 2017 için planladığım kişisel projelerden bir tanesi RabbitCache adını verdiğim saas cache servisi. Normal şartlarda mart ayı içerisinde %80 bitirmeyi planlıyordum fakat -bu projeyle ilgisi olmayan- bazı aksaklıklar biraz geçiktirdi. Fakat şuanda geldiğim noktadan da oldukça mutluyum. Şu durumda geldiğim noktayı basitçe anlatmak istiyorum. Böylece bu projeyle ilgili ilk resmi yazımı da yazmış olayım.

RabbitCache ile basitçe siteleri/projeleri kullanıcı gözünden cache oluşturarak uygulama sunucularında ki yükle birlikte yazılım geliştirici ekiplerin üzerinde ki bir iş parçası olan html cache sürecini de devralmış oluyorum. Henüz full otomatize olmamakla birlikte bir kaç haftalık çalışma sonrasında tam otomatik olarak çalışacak noktaya gelmesini planlıyorum.

Sistemin çalışma prensibi ise şu şekilde;

RabbitCache Çalışma Şeması

RabbitCache servisi ile bu şematik çizimde otomatize etitğimiz kısım Cache yönetimi ve bunun dağıtık bir şekilde servis edilmesi. RabbitCache kontrol paneli üzerinden yapılan yönetimsel süreçler şu şekilde;

  • Cache TimeOut
  • Tam ve URL Bazlı cache temizleme
  • URL BlackList (cache’e alınması istenmeyen URL listesi)

Bununla birlikte toplam istek sayısı, cache üzerinden verilen cevap sayısı, cache miss sayısı gibi istatistikler de grafiksel olarak gösterilebiliyor;

RabbitCache Temel İstatistikler

Grafikteki rakamlar dummy rakamlar olduğu için tutarsızlıklar olabilir, çok takılmayın.

RabbitCache yönetimi yaparken kontrol panelinden yapılan tüm ayar, güncelleme, purge işlemleri RabbitMQ üzerinden işleniyor ve Fabric kütüphanesi ile ilgili cache nodelarında yapılması gereken işler yürütülüyor.

Bu sistemi kullanmak içinse yapılması gereken bir tek şey kontrol paneline domain ekleyip doğrulama yapıldıktan sonra sistem tarafından verilen IP adresini A kaydı olarak dns sunucusuna girmek. İleri ki aşamalarda direk DNS yönetimini de bu sistem üzerinden yapmak gibi bir planım mevcut.

Önümüzde ki süreçler ne gösterecek neler başıma gelecek bilmiyorum, fakat hem sistemi tasarlarken hem kodlama kısmını yaparken yeni şeyler öğreniyor olmam beni şimdilik tatmin ediyor. Eğer proje ile ilgili gelişmeleri takip etmek, kapalı beta sürecine dahil olmak gibi bir düşünceniz oluştuysa info@rabbitcache.com adresine bir mail bırakmanız yeterli olur. Her türlü fikir ve düşüncelerinizi duymaktan mutluluk duyarım.