用途:改善程式性能
核心:将一些變化不頻繁的資料的最終計算結果(包括頁面輸出)緩存起來, 就可以非常明顯地提升程式的性能
重要性:一說到性能優化時,一般都将緩存擺在第一位的原因
方式:
1.OutputCache:頁面被緩存在浏覽器、代理伺服器端和web伺服器端;
2.分布式緩存BeIT Memcached:
在web叢集的情況下,它可以很好的讓一部分常用資料常駐伺服器記憶體而不用擔心各台web不同步
3.Session:針對浏覽器的
4.ASP.NET的Cache:
使用方式:Page.Cache,HttpContext.Cache,HttpRuntime.Cache通路的都是同一個對象。Page.Cache通路了HttpContext.Cache,而HttpContext.Cache又直接通路HttpRuntime.Cache
特征:ASP.NET Cache不能提供對外通路能力。
是以,它不可能取代以memcached為代表的分布式緩存技術
但它由于是不需要跨程序通路,效率也比分布式緩存的速度更快。
如果将ASP.NET Cache設計成【一級緩存】, 分布式緩存設計成【二級緩存】,就像CPU的緩存那樣,那麼将能同時利用二者的所有的優點,實作更完美的功能以及速度。
5.static變量:
特征:這種緩存與ASP.NET Cache相比起來,顯然static變量的通路速度會更快。
如果static集合不是設計得很差的話, 并發的沖突也可能會比ASP.NET Cache小,也正是因為這一點,static集合也有着廣泛的使用。