Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Redis için Azure Cache, tüm SKU'lar için kullanımdan kaldırma zaman çizelgesini duyurdu. Mevcut Redis için Azure Cache örneklerinizi en kısa sürede Azure Yönetilen Redis'e taşımanızı öneririz.
Kullanımdan kaldırma hakkında daha fazla bilgi için:
Bu makalede, Redis için Azure Cache'de bellek yönetimi için en iyi yöntemler açıklanmaktadır.
Doğru çıkarma ilkesini seçin
Uygulamanız için çalışan bir çıkarma ilkesi seçin. Redis için Azure Cache için varsayılan ilke 'dir volatile-lru, bu da yalnızca EXPIRE gibi bir komutla ayarlanmış yaşam süresi (TTL) değerine sahip anahtarların çıkarma için uygun olduğu anlamına gelir. Hiçbir anahtarın TTL değeri yoksa, sistem hiçbir anahtarı çıkarmaz. Sistemin, bellek baskısı altındayken herhangi bir anahtarın çıkarılmasına izin vermesini istiyorsanız, ilkeyi allkeys-lru göz önünde bulundurun.
Anahtarların sona erme tarihini ayarlama
Bellek baskısı nedeniyle çıkarma, sunucunuzda daha fazla yüke neden olabilir. Bellek baskısı oluşana kadar beklemek yerine anahtarları proaktif olarak kaldırmak için anahtarlarınızda bir süre sonu değeri ayarlayın. Daha fazla bilgi için Redis EXPIRE ve EXPIREAT komutlarının belgelerine bakın.
Bellek parçalanmayı en aza indirme
Büyük anahtar değerleri, çıkarma sırasında belleği parçalanmış bırakabilir ve yüksek bellek kullanımına ve sunucu yüküne neden olabilir.
Bellek kullanımını izleyin
Belleğinizin tükenmediğinden emin olmak için bellek kullanımını izleyin. Sorunlar oluşmadan önce önbelleğinizi ölçeklendirme şansı vermek için uyarılar oluşturun.
maxmemory-reserved ayarınızı yapılandırma
Sistem yanıt hızını en üst düzeye çıkarmak için maxmemory-reserved ayarlarınızı yapılandırın. Yeterli ayırma ayarları özellikle yazma ağırlıklı iş yükleri için veya önbelleğinizde 100 KB veya daha fazla değer depoluyorsanız önemlidir.
Bu
maxmemory-reservedayar, yük devretme sırasında çoğaltma gibi önbellek dışı işlemler için ayrılan, bir kümedeki örnek başına MB cinsinden bellek miktarını yapılandırır. Bu değerin ayarlanması, yükünüz değişiklik gösterdiğinde daha tutarlı bir Redis sunucu deneyimi elde etmenizi sağlar.Bu
maxfragmentationmemory-reservedayar, bellek parçalanmasına uyum sağlamak için ayrılan bir kümedeki örnek başına MB cinsinden bellek miktarını yapılandırır. Bu değeri ayarladığınızda, önbellek dolu veya doluya yakın olduğunda ve parçalanma oranı yüksek olduğunda Redis sunucu deneyimi daha tutarlı olur.
Bellek bu işlemler için ayrıldığında, önbelleğe alınmış verileri depolamak için kullanılamaz. Varsayılan olarak, bir önbellek oluşturduğunuzda, kullanılabilir belleğin yaklaşık% 10'u için ayrılır maxmemory-reservedve diğer 10% için ayrılmıştır maxfragmentationmemory-reserved. Yazma ağırlıklı yükleriniz varsa ayrılan miktarları artırabilirsiniz.
için ve için maxmemory-reserved izin verilen aralıklar maxfragmentationmemory-reserved 10%-60%'dirmaxmemory. Bu değerleri %10'un altında veya %60'ın üzerinde ayarlamaya çalışırsanız, bunlar yeniden değerlendirilir ve en az %10 ve en fazla %60 olarak ayarlanır.
Önbelleğin ölçeğini artırdığınızda veya azalttığınızda, hem hem maxmemory-reserved de maxfragmentationmemory-reserved ayarlar önbellek boyutuna göre otomatik olarak ölçeklendirilir. Örneğin, 6 GB önbellekte 3 GB olarak ayarlanırsa ve 12 GB önbelleğe ölçeklendirirseniz maxmemory-reserved , ölçekleme sırasında ayar otomatik olarak 6 GB'a güncelleştirilir. Ölçeği küçültürseniz, bunun tersi olur.
Bir maxmemory-reserved bellek maxfragmentationmemory-reserved ayırma değerini değiştirmenin, içinde büyük miktarda veri bulunan ve zaten çalışmakta olan bir önbelleği nasıl etkileyebileceğini göz önünde bulundurun. Örneğin, ayrılmış değerleri en az 10% ayarlanmış 53 GB'lık bir önbelleğiniz varsa, sistem için kullanılabilir maksimum bellek yaklaşık 42 GB'dir. Geçerli used_memory değerleriniz veya used_memory_rss değerleriniz 42 GB'tan yüksekse, sistemin her ikisi de used_memoryused_memory_rss 42 GB'ın altında olana kadar verileri çıkarması gerekir.
Çıkarma, sunucu yükünü ve bellek parçalanmasını artırabilir. ve used_memorygibi used_memory_rss önbellek ölçümleri hakkında daha fazla bilgi için bkz. Kendi ölçümlerinizi oluşturma.
Not
Azure PowerShell, Azure CLI veya REST API kullanarak önbelleğin ölçeğini program aracılığıyla yukarı veya aşağı ölçeklendirdiğinizde, dahil edilen maxmemory-reserved tüm ayarlar veya maxfragmentationmemory-reserved ayarlar güncelleştirme isteğinin bir parçası olarak yoksayılır. Yalnızca ölçeklendirme değişikliğiniz kabul edilir. Ölçeklendirme işlemi tamamlandıktan sonra bellek ayarlarını güncelleyebilirsiniz.