ASP.NET, ASP.NET bir uygulamada bilgileri önbelleğe alan programlama yetenekleri sunar. Bu işlevsellik Uygulama nesnesine benzer, ancak ASP.NET uygulamanın ömrü boyunca önbelleğe alınmış bilgileri dinamik olarak koruma yeteneğine sahiptir. Bir uygulamada veri önbelleklendirme, performansı büyük ölçüde artırabilir çünkü veri sunucuya yerel ve hızlı alınabilir. Orijinal veri kaynağını yeniden sorgulamak zorunda kalmak yerine. Özellikle mevcut sistemin en büyük darboğazı veritabanıdır ve önbelleğin mantıklı kullanımı, gereksiz veritabanı erişimini azaltarak sistemin performansını optimize edebilir.
Önbellek nesneleri, yönetim uygulamasının diğer kullanıcıları veya ASP.NET kendisi tarafından önbellekte önbelleklenmiş öğeler üzerinde işlem yapılmasına olanak tanıyan alaka temelli son kullanma ve geri çağrı bildirimlerinin uygulanmasını sağlar. Herhangi bir türü (değer tipi veya uygulama türü) güncellemeden veya silmeden önce Cache nesnesini saklamak için kullanın. Önbellek, bir Uygulama nesnesinden daha esnek bir nesnedir. Şunları destekler:
1. İlgililik temelli son kullanma ve silme - Önbellek nesneleri, önbellek değerlerinin otomatik son kullanma ve silinmesini bir dosya olayı, belirli veya göreceli bir tarih/saat veya başka bir önbellek anahtarına bağlama yeteneği sağlar.
2. Otomatik kilit yönetimi - Önbellek nesneleri, atomik güncellemeler (hesaplama işleminde yerleştirilebilen güncellemeler) senkronizasyon sağlayan dahili kilit yönetimini içerir.
3. Geri çağrı mekanizması - Önbellek nesnesi, önbellek öğeleri silerken çağrı fonksiyonunun ayarlanmasını sağlar.
Önbellek ekleme yöntemi Add() veya Insert() içerir ve Insert yöntemi ise, önbelleği her iki varsayılan parametreyle eklemek için isteğe bağlı parametreler kullanabilir:
Cache.Add(KeyName, KeyValue,Dependencies,AbsoluteExpiration,SlidingExpiration,Priority,CacheItemRemoveCallback);
Parametreler şunlardır: önbellek adı, önbelleklenen nesne, bağımlılık, mutlak son kullanma süresi, göreceli son kullanma süresi, öncelik ve önbellek bitişinden kaynaklanan olaylar.
Önbellek bağımlılıkları: dosya bağımlılıkları, diğer önbellek bağımlılıkları, veritabanı bağımlılıkları ve son kullanma süresi yöntemleri belirlenir ve bağımlılıklar değiştiğinde önbellek geçersiz olur ve belirli olayları ortaya çıkarabilir.
1. Dosya bağımlılıkları: xml dosyalarına önbellek bağımlılıkları:
- <p>DataSet dsProducts = new DataSet();</p><p>//...dsProducts数y据Y</p><p>CacheDependency fileDepends = new CacheDependency(Server.MapPath("Northwind.xml"));</p><p>Cache.Insert("dsProducts", dsProducts, fileDepends);</p>
Kopya kodu
2. Diğer önbellek öğesi bağımlılıkları:
- <p>object cacheData;</p><p>string[] fileDependsArray = { Server.MapPath("Northwind.xml") };</p><p>string[] cacheDependsArray = { "Depend0", "Depend1", "Depend2" };</p><p>CacheDependency cacheDepends = new CacheDependency(fileDependsArray, cacheDependsArray);</p><p>Cache.Insert("cacheName", cacheData, cacheDepends);</p>
Kopya kodu
3. Son kullanma süresi ayarı:
AbsoluteExpiration, önbelleğin mutlak son kullanma süresini ayarlayabilir, örneğin 30 dakika sonra süresi dolacak şekilde ayarlanabilir:
- Cache.Insert("cacheName ", "cacheValue", null, DateTime.Now.AddMinutes(30), Cache.NoSlidingExpiration);
Kopya kodu NoSlidingExpiration, önbelleğe NoSlidingExpiration tarafından belirlenen süre içinde erişilmezse, önbellek süresi dolup belirli bir süre için erişilmezse, önbellek süresi dolmazsa, önbellek süresi dolmaz. Önbelleğe 30 dakika içinde erişirseniz, süresi dolmaz:
- Cache.Insert("cacheName", "cacheValue", null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(30));
Kopya kodu
|