我有一個應用程序實現了一個命令對象模式來從服務器獲取數據。現在我想實現一個客戶端緩存,我需要一些關於如何處理緩存的指針
eviction
無效。命令對象緩存失效
問題
爲了得到一個對象我通過GetObject的(ID)命令和receieve一個GetObjectResponse的結果該ID。我有一個緩存可以很好地緩存GetObject(id)的響應。
但是,當我看到像DeleteObject(id)或UpdateObject(id)這樣的命令時,緩存的GetObject(id)響應需要失效。
我應該說,現實並不一定這麼簡單,就像使用一個id參數一樣。某些響應對象依賴於命令對象中的多個參數。另外,傳遞一個命令對象可能使多個響應對象失效。
有關如何完成此任何想法?提前致謝!
引用Haacked:計算機科學只有兩個難題。命名事物,緩存失效和偏離錯誤。 – 2010-10-29 17:44:48
由於您已經在使用Command模式,請查看責任鏈模式。 – 2010-10-29 20:12:38