ASP.NET中Session和Cache的區別總結_實用技巧

來源:互聯網
上載者:User

以前實現資料的緩衝有很多種方法,有用戶端的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目前只能儲存在記憶體中,對其效能有影響。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.