Açılır kutulara bağlı veya bir web sitesinde ileri metin kutusu sonuçları olarak kullanılacak değerleri döndürmek için kullanılacak bir MVC webAPI yazıyorum ve değerleri önbelleğe almak istiyorum bellekte her zaman API vurulduğunda veritabanı istekleri gerçekleştirmek gerekmez.Uygulama verilerini bellekte önbelleğe alma: MVC Web API'si
MemoryCache sınıfını kullanacağım ve ilk istek geldiğinde önbelleği doldurabileceğimi biliyorum, ancak API'nın ilk isteğinin diğerlerinden daha yavaş olmasını istemiyorum. Sorum şu: WebAPI ilk başladığında önbelleği otomatik olarak doldurmanın bir yolu var mı? Bir "App_Start" klasörü olduğunu görüyorum, belki sadece buraya bir şey atıyorum
İlk popülasyondan sonra, önbelleği gerektiği gibi güncellemek için muhtemelen bir saatlik/günlük istekte bulunacağım.
MemoryCache: http://msdn.microsoft.com/en-us/library/system.runtime.caching.memorycache.aspx
udpate
Ela cevabı aşağıda temelde sadece Global.asax yeteneklerine bakmak için gerekli hile yaptı. Buradaki hızlı yardım için teşekkürler, bu, farklı önbelleğe alma türlerinin artıları/eksileri hakkında benim için ayrı bir soru ortaya koydu.
Pros/Cons of different ASP.NET Caching Options
tekrar teşekkürler yanıt için! Ekstra bilgiyi takdir ediyorum, sorduğum yeni soruda sahip olabileceğiniz ek önbellek bilgilerini yayınlamaktan çekinmeyin (buradaki asıl soruya link). IIS çalışan zaman aşımlarını – vesuvious
hesabına almam gerekecek ya da sitenize her 15 dakikada bir ping attığı bir "kalp atışı" servisi ayarlayabilirsiniz. Bunu yapmak için BinaryCanary.com'u (ücretsiz) kullanıyorum çünkü bulut-barındırma hizmetim, planımı yükseltmedikçe 20 dakikadan daha fazla bir süre için idle_timeout'u değiştirmeyecek. – ganders