2011-12-14 84 views
4

我正在開發一個將返回JSON數據的WCF。該方法將接受一個參數並從數據庫返回數據。如何使用WCF緩存

如果WCF上的負載很高,那麼使用某些緩存會很好,這樣可以避免必須一直挖到數據庫。編輯: 該方法將返回最近的項目。因此,該方法應該爲所有提供相同時間間隔的請求返回相同的響應作爲參數。

這怎麼能有效地完成?我讀過關於基本Web HTTP服務緩存的小問題,但我不確定這是否是最佳解決方案。

非常感謝。

+1

http://msdn.microsoft.com/en-us/library/ee230443.aspx – 2011-12-14 16:24:54

+0

當然: )。如果參數相同,則響應是相同的...我將編輯帖子。 – johan 2011-12-14 16:29:29

回答

1

就我個人而言,我喜歡讓我的WCF服務會話就緒,並將我的緩存存儲在會話中。權衡總是在數據的靜態和數據需要被拉下來之間。

對於非常靜態的數據,我可以緩存會話的長度,或者直到數據發生變化(確定不同的用戶是否更改了會話的緩存數據是另一回事)。對於非常動態的數據,我發現很難相信我的緩存超過幾分鐘(仍不完全安全)。

問題是,您是在談論客戶端緩存還是服務器端緩存?這意味着你試圖在客戶端上緩存數據集,還是僅僅緩存已經從數據庫服務器上拉取數據集的Web服務器?

如果您在談論客戶端緩存,那麼您可以在Cookie中緩存,在JavaScript變量中緩存,使用http緩存或上述HTML 5應用程序緩存機制。

它是所有關於雖然工作的工具,還有在這種情況下,沒有錘;)