我有一個WCF服務。 WCF服務提供了一套直接與CRM對話的方法。我從這些服務獲得的大部分數據都是查找數據,我經常收到這些數據。這會降低性能,因爲我的網站中的單個表單包含從CRM獲取的多個查找。頻繁訪問WCF服務的最佳方式
爲了解決這個問題,我已經想到了:
*創建一個Windows服務,將抓住所有的數據並保存在本地數據庫中。該服務將在特定時間後運行,以確保所有數據同步。
*緩存數據。對於每次調用某個方法來檢索查詢類型時,數據都將被緩存,以便任何類似的調用都會返回緩存的數據。
我的問題是:
1-有沒有比這更好的方法?
2 - 如果不是,哪個更好?
正如我之前所說,我的大部分數據都是查詢,這意味着他們不會經常更改。我的緩存想法是緩存數據一天,如果客戶指出一些數據不斷變化,那麼我會改變過期。 – ykh
如果適合您的客戶,應該是您的解決方案,是的。緩存鍵可以存儲過程/視圖/方法名稱+輸入參數。無論如何,您的密鑰的字符串長度是沒有問題的,因爲它在緩存中被散列(如果您正在使用MemoryCache f.e.) – KoPoCabana