Redis için Azure Cache sunucusu sorunlarını giderme

Bu bölümde, bir Redis için Azure Cache sunucusundaki veya onu barındıran sanal makinelerin herhangi birinde bulunan koşulların neden olduğu sorun giderme sorunları açıklanmıştır.

Not

Bu kılavuzdaki sorun giderme adımlarından bazıları Redis komutlarını çalıştırma ve çeşitli performans ölçümlerini izleme yönergelerini içerir. Daha fazla bilgi ve yönergeler için Ek bilgiler bölümündeki makalelere bakın.

Yüksek sunucu yükü

Yüksek sunucu yükü Redis sunucusunun meşgul olduğu ve isteklere yetişemediği anlamına gelir; bu da zaman aşımlarına yol açar. Sol taraftaki Kaynak menüsünden İzleme'yi seçerek önbelleğinizdeki Sunucu Yükü ölçümünü denetleyin. İçgörüler'in altındaki çalışma bölmesinde Sunucu Yükü grafiğini görürsünüz. Ya da Ölçümler'in altında Sunucu Yükü'ne bir ölçüm kümesi ekleyin.

Aşağıda, yüksek sunucu yükü için dikkate alınması gereken bazı seçenekler yer alır.

Ölçeği artırma veya genişletme

Daha fazla parça eklemek için ölçeği genişleterek yükün birden çok Redis işlemine dağıtıldığına dikkat edin. Ayrıca daha fazla CPU çekirdeğiyle daha büyük bir önbellek boyutuna ölçeklendirmeyi de göz önünde bulundurun. Daha fazla bilgi için bkz. Redis için Azure Cache planlama hakkında SSS.

İstemci bağlantısı sayısındaki hızlı değişiklikler

Daha fazla bilgi için bkz . İstemci bağlantısında ani artışlardan kaçınma.

Uzun süre çalışan veya pahalı komutlar

Bu bölüm taşındı. Daha fazla bilgi için bkz . Uzun süre çalışan komutlar.

Ölçeklendirme

Verileri düğümler arasında taşımayı ve küme topolojisini değiştirmeyi içerebileceğinden ölçeklendirme işlemleri CPU ve bellek açısından yoğundur. Daha fazla bilgi için bkz . Ölçeklendirme.

Hizmet bakımı

Redis için Azure Cache yük devretme işlemi Redis için Azure Cache, kapanan düğümden gelen tüm istemci bağlantıları çalışmakta olan düğüme aktarılır. Artan bağlantılar nedeniyle sunucu yükünde ani artış olabilir. tüm istemci bağlantılarının yeniden oluşturulması ve iki düğüm arasında yeniden dağıtılması için istemci uygulamalarınızı yeniden başlatmayı deneyebilirsiniz.

Yüksek bellek kullanımı

Sunucudaki bellek baskısı, isteklerin işlenmesini geciktiren çeşitli performans sorunlarına yol açabilir. Bellek baskısıyla karşılaşıldığında sistem verileri diskte sayfalar ve bu da sistemin önemli ölçüde yavaşlamasına neden olur.

Bellek baskısının bazı olası nedenleri şunlardır:

  • Önbellek, maksimum kapasiteye yakın verilerle doldurulur
  • Redis sunucusu yüksek bellek parçalanması görüyor

Büyük olasılıkla bir yük deseni büyük ölçüde yüksek varyasyona sahip verileri depoladığında parçalanmanın nedeni olabilir. Örneğin, veriler 1 KB ve 1 MB boyuta yayıldığında parçalanma oluşabilir. Mevcut bellekten 1 KB'lık bir anahtar silindiğinde, 1 MB'lık anahtar buna sığamaz ve parçalanmalara neden olur. Benzer şekilde, 1 MB anahtar silinirse ve 1,5 MB anahtar eklenirse, mevcut geri kazanılabilir belleğe sığamaz. Bu, kullanılmayan boş belleğe neden olur ve daha fazla parçalanmayla sonuçlanır.

Değer ölçümün used_memory_rss 1,5 katının used_memory üzerindeyse bellekte parçalanma olur. Parçalanma şu durumlarda sorunlara neden olabilir:

  1. Bellek kullanımı, önbellek için maksimum bellek sınırına yakın veya
  2. UsedMemory_RSS Maksimum Bellek sınırından yüksek olduğundan bellekte hataya neden olabilir.

Önbellek parçalanmışsa ve yüksek bellek baskısı altında çalışıyorsa sistem, Yerleşik Küme Boyutu (RSS) belleğini kurtarmayı denemek için yük devretme yapar.

Redis, used_memory bu sorunu belirlemenize yardımcı olabilecek BİlGİ komutu aracılığıyla ve used_memory_rssolmak üzere iki istatistik sunar. Portalı kullanarak bu ölçümleri görüntüleyebilirsiniz .

ve maxfragmentationmemory-reserved değerlerinin maxmemory-reserved uygun şekilde ayarlandığını doğrulayın.

Bellek kullanımını iyi durumda tutmaya yardımcı olmak için yapabileceğiniz birkaç değişiklik vardır:

Bellek yönetimiyle ilgili öneriler için bkz. Bellek yönetimi için en iyi yöntemler.

Uzun süre çalışan komutlar

Bu bölüm taşındı. Daha fazla bilgi için bkz . Uzun süre çalışan komutlar.

Sunucu tarafı bant genişliği sınırlaması

Bu bölüm taşındı. Daha fazla bilgi için bkz . Ağ bant genişliği sınırlaması.

Ek bilgiler