簡體   English   中英

ASP.NET MVC框架中的緩存

[英]Caching in the ASP.NET MVC Framework

我在使用ASP.NET MVC框架時相當新,並且希望在緩存我的MVC Web應用程序的各個部分時能夠找到一些關於最佳實踐的幫助。 我知道堆棧溢出使用MVC和一些相當漂亮的令人敬畏的緩存技術,並且它的MILES比我的應用程序更快,即使在本地運行時也是如此。

我有幾個問題。

  1. 緩存實際上是如何工作的,以及如何“啟用”它,以及各種選項有哪些。 什么是最好的緩存使用?

  2. 我的應用程序有很多數據庫事務,列表定期更改。 我擔心頁面刷新的嚴重性,用戶沒有獲得最新版本的數據。 什么是在Web應用程序速度和顯示“最新”數據之間取得平衡的最佳方法? 你們在處理這個問題時發現了哪些最佳做法?

  3. 如何使用不同的緩存設置緩存不同的部分(我假設視圖)? 我假設它可以用子控制器完成,但我有NFI如何去做這個。

  4. 我正在使用Castle.Windor集成到控制器,我不確定這是否會改變任何東西。

  5. 任何其他需要警惕/謹慎的事情的最佳做法將不勝感激。

您可能想看看Phil Haack的帖子,以獲得一些甜甜圈緩存。 他是ASP.NET MVC的參考:)

從“最佳實踐”的角度來看,您需要考慮在使用緩存的任何應用程序中必須考慮的相同事項。

  • 流量是否足夠高,可以從緩存中受益?
  • 特定數據的變化頻率如何? 及時性有多重要?
  • 我是否擁有數據訪問層? 如果是這樣,我是否可以通過實際更改數據來觸發緩存中的刷新並避免基於時間的到期?

而這樣的例子不勝枚舉。

您可以使用OutputCache屬性輕松緩存視圖。 任何不經常更新的列表我也使用nHibernate緩存機制進行緩存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM