2011-02-09 121 views
2

我的網站與博客相似,頁面內容不會經常更改。所以我決定使用頁面輸出緩存。在實現ASP.NET自定義輸出緩存中需要建議

但是當我打開每個頁面的輸出緩存並將緩存持續時間設置爲1小時時,我的網站託管提供的網站因使用大量系統內存而暫停。之後,我將持續時間重新設置爲2分鐘,但有時我正在收到數據庫連接超時錯誤。

爲了獲得更好的性能,無論如何我需要緩存但不緩存在內存中。所以我帶着下面的想法來。請告知是最好的方法還是比這更好的解決方案?

我想編寫攔截所有請求的HTTP模塊。如果特定請求的緩存版本不存在,則它將頁面響應(使用過濾器寫入)寫入磁盤作爲文件,否則將此文件作爲響應發送。

目標框架是2.0

+0

請嘗試查看[Microsoft企業庫](http://msdn.microsoft.com/zh-cn/library/ff648951.aspx)。有一個緩存應用程序塊可以解決你的問題。 – Koen 2011-02-09 15:10:45

+0

@Koen,我希望只用於數據緩存,不用於輸出緩存 – Veeru 2011-02-09 15:27:33

回答

0

如果您在ASP.NET 4.0的時候,那麼你不需要寫這個作爲一個HTTP模塊 - 輸出緩存是基於提供者的,你可以只寫一個新的供應商,插入它。Gunnar Peipman在編寫一個基於文件的輸出緩存提供程序時有一個很棒的博客here

相關問題