01Sorun ve çözüm
Redis kurulumu hizmetimizde önce Redis'in sizde hangi işi yaptığını ayırırız. Yalnızca önbellek olarak kullanılan bir örnekle oturum, kuyruk ya da sıralama tablosu tutan bir örneğin kalıcılık, bellek ve yedeklilik ihtiyacı farklıdır. Bu ayrıma göre tek sunucu, Sentinel ile izlenen ana-kopya düzeni ya da Redis Cluster seçilir; yapılandırma, güvenlik ve izleme bu kararın üzerine kurulur.
02Kimler için
Redis kurulumu hangi ekiplere uygun
Redis'e başlamak kolaydır; zorluk, trafik arttığında ve bir arıza yaşandığında ortaya çıkar.
- Veritabanı yükünü azaltmak için önbellek katmanı eklemek isteyen web ve mobil uygulama ekipleri
- Laravel, Django, Node.js ya da Spring tabanlı uygulamalarında oturum ve kuyruk için Redis kullanan yazılım ekipleri
- Kampanya dönemlerinde ani trafik artışı yaşayan e-ticaret siteleri
- Tek Redis sunucusunun düşmesiyle bütün uygulamanın durduğu bir arıza yaşamış şirketler
- Kendi sunucusundaki Redis'i yönetilen bir bulut servisine taşımayı ya da tersini düşünen ekipler
03İhtiyaçlar
Canlı ortamda Redis'te karşılaşılan riskler
Bu risklerin hepsi kurulum aşamasında verilen birkaç kararla önlenebilir.
- 01
Belleğin dolması
maxmemory sınırı tanımlanmamışsa Redis sunucunun belleğini bitirip işletim sistemi tarafından durdurulabilir; sınır konup tahliye politikası seçilmemişse yazmalar reddedilir. Önbellekte en az kullanılan anahtarın silinmesi uygundur, kuyrukta ise hiçbir veri kendiliğinden silinmemelidir.
- 02
Yeniden başlatmada veri kaybı
RDB anlık görüntüsü belirli aralıklarla diske yazar; son yazımdan sonraki veri kaybolabilir. AOF her yazma işlemini kaydeder ama disk kullanımı ve yeniden yükleme süresi artar. Hangisinin ya da ikisinin birlikte kullanılacağı verinin önemine göre seçilir.
- 03
Tek nokta arızası
Tek sunucuda çalışan Redis düştüğünde oturumlar ve önbellek bir anda gider, veritabanı ani yükle karşılaşır. Sentinel kopyalardan birini otomatik olarak ana sunucuya yükseltir ve istemcileri yönlendirir.
- 04
Açık bırakılan erişim
Parolasız ve internete açık bir Redis, veri sızıntısı ve sunucunun ele geçirilmesi için bilinen bir yoldur. Yalnızca iç ağdan erişim, ACL ile kullanıcı bazlı yetki ve gerekirse TLS kurulumun parçası olmalıdır.
- 05
Yavaşlatan komutlar
Redis komutları tek iş parçacığında sırayla işler; bütün anahtarları tarayan bir KEYS ya da büyük bir anahtar üzerinde çalışan ağır bir komut diğer bütün istekleri bekletir. Bu komutlar yeniden adlandırılarak ya da ACL ile kısıtlanarak engellenir.
04Özellikler
Redis kurulumu hizmetinde neler yapıyoruz
Kurulum, uygulamanızın Redis'i nasıl kullandığına göre şekillenir.
- 01
Kullanım analizi ve boyutlandırma
Anahtar sayısı, ortalama değer boyutu, okuma-yazma oranı ve büyüme beklentisinden bellek ihtiyacı hesaplanır; işletim sistemi ve kalıcılık için pay bırakılır.
- 02
Topoloji seçimi
Tek örnek, Sentinel ile ana-kopya ya da veriyi parçalara bölen Redis Cluster arasındaki seçim, veri hacmine ve kesinti toleransına göre yapılır.
- 03
İşletim sistemi ayarları
Bellek aşırı tahsis ayarı, şeffaf büyük sayfaların kapatılması ve dosya tanımlayıcı sınırları gibi Redis'in kararlı çalışması için gereken sistem ayarları yapılır.
- 04
Uygulama tarafı uyumu
Anahtar adlandırma kuralları, süre aşımı değerleri ve istemci kütüphanesinin Sentinel ya da Cluster desteği uygulama ekibiyle birlikte gözden geçirilir.
- 05
Yük testi ve arıza provası
redis-benchmark ve uygulamaya yakın senaryolarla yük testi yapılır; ana sunucu kapatılarak yük devretmenin istemcide nasıl göründüğü denenir.
05Entegrasyonlar
Redis'in bağlandığı ortamlar
Redis'i nerede ve hangi araçlarla çalıştıracağınız, kurulum ve bakım yükünü doğrudan etkiler.
- 01
Yönetilen bulut servisleri
Amazon ElastiCache, Azure Cache for Redis veya Google Cloud Memorystore kullanıldığında sunucu bakımı sağlayıcıya geçer; parametre grupları, ağ erişimi ve bakım pencereleri yapılandırılır.
- 02
Kubernetes ve Docker
Konteyner ortamında Redis, kalıcı disk, kaynak sınırları ve kapanış sırası düşünülerek StatefulSet ya da bir operatör ile çalıştırılır.
- 03
Kuyruk ve arka plan iş araçları
Laravel Horizon, Sidekiq, Celery veya BullMQ gibi araçların Redis'ten beklediği kalıcılık ve bellek davranışı ayrıca ayarlanır.
- 04
Valkey ve uyumlu alternatifler
Redis'in lisans değişikliğinden sonra ortaya çıkan Valkey gibi açık kaynak çatallar aynı protokolü konuşur; lisans politikanıza göre hangisinin kurulacağı birlikte değerlendirilir.
- 05
İzleme
redis_exporter ile Prometheus ve Grafana üzerinden bellek kullanımı, isabet oranı, bağlı istemci sayısı ve gecikme izlenir.
06Süreç
Redis kurulumu hizmeti nasıl ilerler?
Adım 01
Analiz
İş akışınızı, kullanıcılarınızı ve mevcut sistemlerinizi dinleriz; kapsamı, öncelikleri ve kabul ölçütlerini yazılı hâle getiririz.
Adım 02
Tasarım
Ekran akışlarını ve veri modelini çıkarırız. Arayüzü sizinle gözden geçirip onay almadan geliştirmeye geçmeyiz.
Adım 03
Geliştirme
Kısa döngülerle çalışırız; her döngü sonunda çalışan bir sürümü test ortamında görürsünüz.
Adım 04
Test
İşlevsel testler, entegrasyon testleri ve temel güvenlik kontrolleriyle hataları yayından önce yakalarız.
Adım 05
Yayın
Sunucu, alan adı, yedekleme ve izleme ayarlarını yaparak canlıya alırız; ekibinize kısa bir kullanım eğitimi veririz.
Adım 06
Bakım
İsterseniz bakım ve destek anlaşmasıyla güncellemeleri, izlemeyi ve yeni geliştirmeleri sürdürürüz.
07Teknoloji
Önbellek ile kalıcı veri arasındaki çizgi
Kurulumda vurguladığımız ilke şudur: Redis'te tutulan her veri için kaybolursa ne olacağı sorusunun cevabı bilinmelidir. Önbellek kaybolursa uygulama yavaşlar ama veri kaynağından yeniden doldurulur. Kuyruktaki ödeme ya da e-posta işi kaybolursa bunun telafisi zordur; bu tür veriler için ayrı bir örnek, AOF kalıcılığı ve yedekleme gerekir.
Devamını okuDaha az göster
Önbellek silindiğinde binlerce isteğin aynı anda veritabanına yönelmesi de ayrı bir risktir. Süre aşımı değerlerine küçük rastgele farklar eklemek ve aynı anahtarı yalnızca bir isteğin yeniden hesaplamasını sağlamak bu ani yükü yumuşatır; bu kuralları uygulama ekibinizle birlikte belirleriz.
Redis'te kişisel veri tutuluyorsa, örneğin oturumda kullanıcı bilgisi varsa, bu veri KVKK kapsamındadır. Süre aşımıyla gereğinden uzun saklanmaması, disk üzerindeki RDB ve AOF dosyalarına erişimin kısıtlanması ve ağ trafiğinin şifrelenmesi kurulumda ele alınır.
08Çalışma modelleri
Bu hizmette çalışma modelleri
- 01
Proje bazlı
Sabit kapsam, sabit fiyat ve belirli teslim tarihi
Kapsamı belli, teslim tarihi olan işler için.
- Yazılı kapsam ve kabul ölçütleri
- Sabit fiyat ve belirli teslim tarihi
- Teslim ve kabul adımları sözleşmede
- 02
Bakım ve destek
Aylık sözleşmeli, SLA'lı bakım, destek ve geliştirme saati
Yayındaki bir sistemin sürekliliği için.
- Aylık sözleşme ve SLA
- İzleme, güncelleme ve hata düzeltme
- Aylık geliştirme saati
- 03
Danışmanlık
Saatlik veya günlük teknik danışmanlık
Karar, denetim veya yön belirleme gereken durumlar için.
- Saatlik veya günlük çalışma
- Yazılı rapor ve öneriler
- Ekibinizle birlikte çalışma
09Sık sorulan sorular
Redis kurulumu hakkında sık sorulan sorular
Redis kurulumu fiyatlarını hangi etkenler belirler?
Tek sunucu mu yoksa Sentinel ya da Cluster mı kurulacağı, ortamın kendi sunucunuz, bulut ya da Kubernetes olması, mevcut bir Redis'ten veri taşınıp taşınmayacağı ve kurulum sonrası izleme ve destek isteyip istemediğiniz fiyatı belirler.
Sentinel mi yoksa Redis Cluster mı kullanmalıyız?
Veriniz tek bir sunucunun belleğine sığıyorsa ve ihtiyaç yalnızca otomatik yük devretmeyse Sentinel daha sade bir çözümdür. Veri tek sunucuya sığmıyor ya da yazma yükü bölünmesi gerekiyorsa Cluster gerekir; ancak çok anahtarlı komutlarda kısıtlar getirdiği için uygulama tarafında uyum ister.
Mevcut Redis'imizi kesintisiz yeni ortama taşıyabilir misiniz?
Yeni ortamı eski sunucunun kopyası olarak bağlayıp eşitledikten sonra uygulamanın bağlantı adresini değiştirmek mümkündür. Yönetilen servislere geçişte bu yöntemin desteklenip desteklenmediğine göre dosya tabanlı aktarım ya da kısa bir bakım penceresi planlanır.
Redis'i ana veritabanı olarak kullanabilir miyiz?
Bazı senaryolarda mümkündür, ama verinin tamamının bellekte tutulması maliyet ve kalıcılık açısından dikkatli planlama ister. Çoğu iş uygulamasında Redis, ilişkisel veritabanının önünde hız katmanı olarak kullanıldığında daha güvenli bir yapı ortaya çıkar.
Kurulumdan sonra Redis'i kim izleyecek?
Kurulumla birlikte bellek, gecikme ve yük devretme için uyarılar tanımlanır. İzlemeyi ekibiniz üstlenebilir ya da bakım ve destek anlaşmasıyla uyarıları ve sürüm güncellemelerini biz takip edebiliriz.
Redis kurulumu firmasından teslimde hangi belgeleri istemeliyiz?
Topoloji şeması, yapılandırma dosyalarının açıklamalı hâli, ACL kullanıcıları ve yetkileri, yedekten geri dönüş adımları ve yük devretme provasının sonucu teslim edilmelidir. Bu belgeler olmadan kurulumu başka bir ekibin devralması zorlaşır.
10İlgili hizmetler