我正在使用Spring緩存機制和SimpleCacheManager/ConcurrentMapCache。Spring Cache未在生產中清除
我正在使用Web服務來清除緩存,以下是代碼。
for(String cacheName : cacheManager.getCacheNames()){
Cache cache =cacheManager.getCache(cacheName);
if(cache!=null){
cache.clear();
}
}
當我打電話從本地虛擬機中的休息web服務的代碼,我可以看到它的清除緩存,可以看到,我們在與其他服務的數據庫完成的改變,但是對生產環境,web服務在日誌中返回200個狀態。但它仍然顯示舊數據。 生產時,我們有2臺服務器 我們必須重新啓動應用程序以刷新緩存並從數據庫獲取最新數據。
想知道您使用了哪個緩存管理器? 我知道SimpleCacheManager沒有驅逐合約有一些限制。 http://docs.spring.io/spring-framework/docs/3.2.0.M1/reference/html/cache.html – Ithar