2010-08-11 28 views
17

ASP.NET MVC uygulaması web-grubu hazır hale getirmenin en etkili yolu ne olacaktır.Bir ASP.NET MVC uygulaması yapın Web Çiftliği Hazırlığı

En önemlisi, mevcut kullanıcı bilgilerini (Bağlam) ve (çok önemli değil) arama öğeleri (Eyalet, Sokak Türleri, ilçeler vb.) Gibi önbelleğe alınmış nesneleri paylaşma.

MemCache'i okuduğumu/okuduğumu ancak nasıl uygulayacağınız ve test edeceğiniz konusunda basit bir uygulanabilir yol (belge) görmedim.

cevap

21

İstek bağlam
kullanılabilir bir IIS sunucusu tarafından sunulan alır bir web çiftliği vurur Herhangi bir istek. Bağlam orada oluşturulur ve tüm istek aynı sunucu tarafından sunulur. Yani bağlam bir sorun olmamalı. Talep, vatansız bir yürütme hattıdır, dolayısıyla verileri başka sunucularla herhangi bir şekilde veya biçimde paylaşması gerekmez. Aynı makine tarafından başından sonuna kadar servis edilecektir.
Kullanıcı bilgileri bir çerezden okunur ve istekte bulunan sunucu tarafından işlenir. Tam kullanıcı nesnesini bir yere önbelleğe alırsanız buna bağlıdır.

Oturum
Eğer TempData sözlüğü kullanırsanız bunu Session sözlüğe içine depolanan bilmelidir. Bir sunucu çiftliğinde, InProc oturumlarından başka araçlar kullanmanız gerektiği anlamına gelir, çünkü bunlar, çiftlikteki IIS sunucuları arasında paylaşılmaz. DB veya başkalarını kullanan diğer oturum yöneticilerini yapılandırmalısınız (Durum sunucusu vb.).


o farklı bir hikaye önbelleğe gelir Önbellek
. Olası önbellek kadar verimli hale getirmek için servis yapılmalıdır. Varsayılan olarak değil. Ancak önbelleğe bakmak neredeyse hiç önbellek olmadığı zaman okunması ve önbellekte saklanması anlamına gelir. Yani belirli bir sunucu çiftlik sunucusunda bazı önbellek nesnesi yoksa, bunu oluşturur. Zamanla hepsinde ortak olarak paylaşılan bazı veriler önbelleğe alınacaktı.
Veya ... gibi memeliler için gibi kitaplıklar kullanabilirsiniz (belirtildiği gibi) ve paylaşılan önbellekten faydalanabilirsiniz. Ağın nasıl kullanılacağını birkaç örnek vardır.

Ancak, bu çözümlerin tümü, başka hiçbir şey yoksa (ağ ve üçüncü işlem işleme ve veri alma gibi) birçok şeyin ek yükünü getirir. Dolayısıyla, varsayılan önbellek en hızlıdır ve açık bir şekilde paylaşılan önbelleğe ihtiyacınız varsa, bir tanesine karar verin. Gerçekten gerekli olmadıkça önbellek paylaşmayın.

İlgili konular