程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> ASP.NET中Session和Cache的區別總結

ASP.NET中Session和Cache的區別總結

編輯:ASP.NET基礎

以前實現數據的緩存有很多種方法,有客戶端的Cookie,有服務器端的Session和Application。其中Cookie是保存在客戶端的一組數據,主要用來保存用戶名等個人信息。Session則保存對話信息。Application則是保存在整個應用程序范圍內的信息,相當於全局變量。通常使用最頻繁的是Session,那麼Session和Cache又有什麼區別呢?

本節結合使用經驗,詳細介紹Session緩存和Cache緩存的區別。

(1)最大的區別是Cache提供緩存依賴來更新數據,而Session只能依靠定義的緩存時間來判斷緩存數據是否有效。

(2)即使應用程序終止,只要Cache.Add方法中定義的緩存時間未過期,下次開啟應用程序時,緩存的數據依然存在。而Session緩存只是存在於一次會話中,會話結束後,數據也就失效了。

(3)Session容易丟失,導致數據的不確定性,而Cache不會出現這種情況。

(4)由於Session是每次會話就被加載,所以不適宜存放大量信息,否則會導致服務器的性能降低。而Cache則主要用來保存大容量信息,如數據庫中的多個表。

(5)VS2005的測試版提供了將緩存保存在硬盤上的參數,但正式版中取消了這個功能,估計其在以後版本中會重新實現。而Session目前只能保存在內存中,對其性能有影響。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved