Redis için Azure Cache’de Sunucu Yükünü Yönetme

Değer boyutları

İstemci uygulamanızın tasarımı, çok sayıda küçük değeri mi yoksa daha az sayıda daha büyük değeri mi depolamanız gerektiğini belirler. Redis sunucusu açısından bakıldığında, küçük değerler daha iyi performans sağlar. Değer boyutunu 100 KB'tan küçük tutmanızı öneririz.

Tasarımınız Redis için Azure Cache'de daha büyük değerleri depolamanızı gerektiriyorsa, sunucu yükü daha yüksek olacaktır. Bu durumda CPU kullanımının aktarım hızını sınırlamadığından emin olmak için daha yüksek bir önbellek katmanı kullanmanız gerekebilir.

Önbellekte yeterli CPU kapasitesi olsa bile, daha büyük değerler gecikme süresini artırır; bu nedenle Uygun zaman aşımlarını yapılandırma bölümündeki yönergeleri izleyin.

Daha büyük değerler bellek parçalanması yaşanması olasılığını da artırır; bu nedenle maxmemory-reserved ayarınızı yapılandırma bölümündeki yönergeleri izlediğinizden emin olun.

İstemci bağlantısında ani artışlardan kaçınma

Bağlantıların oluşturulması ve kapatılması Redis sunucusu için yüksek maliyetli bir işlemdir. İstemci uygulamanız kısa süre içinde çok fazla bağlantı oluşturur veya kapatırsa Redis sunucusuna yük olabilir.

Birçok istemci örneğinden aynı anda Redis'e bağlanma işlemi başlatıyorsanız, bağlı istemci sayısında ani bir artış yaşanmasını önlemek için yeni bağlantı oluşturma işlemlerini kademelendirmeyi göz önünde bulundurun.

Bellek baskısı

Sunucuda yüksek bellek kullanımı, sistemin verileri diske sayfalama olasılığını artırır ve bu da sistemi önemli ölçüde yavaşlatabilecek sayfa hatalarına neden olabilir.

Uzun süre çalışan komutlardan kaçının

Redis sunucusu tek iş parçacıklı bir sistemdir. Uzun süre çalışan komutlar, sunucu uzun süre çalışan bir komut üzerinde çalışmakla meşgulken diğer isteklere yanıt veremediğinden istemci tarafında gecikmeye veya zaman aşımlarına neden olabilir. Daha fazla bilgi için bkz. Redis için Azure Cache sunucu tarafı sorunlarını giderme.

Sunucu Yükünü İzleme

Yüksek sunucu yükü oluştuğunda bildirim almak için sunucu yüküne izleme ekleyin. İzleme, uygulamanızın kısıtlamalarını anlamanıza yardımcı olabilir. Ardından sorunları azaltmak için proaktif olarak çalışabilirsiniz. Olumsuz performans etkilerini önlemek için sunucu yükünü %80'in altında tutmaya çalışmanızı öneririz. %80'in üzerinde sürekli sunucu yükü planlanmamış yük devretmelere yol açabilir. Şu anda Redis için Azure Cache, portalın sol tarafındaki Kaynak menüsündeki İzleme altındaki Analizler iki ölçümü kullanıma sunar: CPU ve Sunucu Yükü. Her ölçümün ölçtüğü değeri anlamak, sunucu yükünü izleme bakımından önemlidir.

CPU ölçümü, önbelleği barındıran düğüm için CPU kullanımını gösterir. CPU ölçümü kesinlikle Redis sunucu işlemi olmayan işlemleri de içerir. CPU, kötü amaçlı yazılımdan koruma ve diğer amaçlara yönelik arka plan işlemlerini içerir. Sonuç olarak, CPU ölçümü bazen ani artış gösterebilir ve Redis sunucusundaki CPU kullanımının tam bir göstergesi olmayabilir.

Sunucu Yükü ölçümü yalnızca Redis Server üzerindeki yükü temsil eder. CPU yerine Sunucu Yükü ölçümünü izlemenizi öneririz.

Sunucu yükünü izlerken, kısa süreli ani artışlar bile yük devretmeleri ve komut zaman aşımlarını tetikleyebileceğinden ortalama yerine Sunucu Yükü'ne ilişkin en yüksek ani artışları incelemenizi öneririz.

Sunucu bakımını planlama

Önbellek sunucularınız bakım altındayken en yüksek yükünüzü işlemek için yeterli sunucu kapasitesine sahip olduğunuzdan emin olun. Yoğun yük altındayken düğümleri yeniden başlatarak sisteminizi test edin. Düzeltme ekinin dağıtımının benzetimini yapma hakkında daha fazla bilgi için bkz . yeniden başlatma.

Yük devretme işleminden sonra artan sunucu yükünü test etme

Standart ve Premium SKU'ları için her önbellek iki düğümde barındırılır. Yük dengeleyici istemci bağlantılarını iki düğüme dağıtır. Birincil düğümde planlı veya plansız bakım gerçekleştiğinde, düğüm tüm istemci bağlantılarını kapatır. Böyle durumlarda, tüm istemci bağlantıları bir düğüme inebilir ve tek kalan düğümde sunucu yükünün artmasına neden olabilir. Tek düğümün sunucu yükü çok fazla artmadan tüm istemci bağlantılarınızı işleyebildiğinden emin olmak için, birincil düğümü yeniden başlatıp bu senaryoyu test etmenizi öneririz.

Sonraki adımlar