2014-01-29 47 views
1

我想用的Ehcache以下任務:這可以用Ehcache解決嗎?

有可以執行每天只ň次的例程。每次調用時,數據庫中的計數器都會減少。當它達到0時,這個事實被表示在一個共享的哈希映射表中(在當前日期下提交),並且直到一天結束時都不需要聯繫數據庫。數據庫計數器在午夜由一個異步任務重置爲n,哈希映射沒有適合新日期的條目,並且數據庫輪詢恢復。

現在我想在Ehcache中實現這種行爲,因爲我們已經將其用於其他緩存,並且我希望能夠在一個位置關閉所有緩存。這帶來以下問題:

  1. 只有在@Cacheable方法(發現DB計數器爲零)時才知道高速緩存激活的條件。這可能會排除聲明式緩存規範,對嗎?
  2. 生存時間需要指定爲時間點,而不是持續時間。這可能嗎?
+0

對我來說這將是不易出錯的使用日期在緩存中的關鍵,這樣的時刻,新的一天的黎明,代碼將開始尋找下新的信息鍵。當舊密鑰仍然存在時,前一天的舊作業仍然會看舊密鑰,並注意「噢,我不需要做任何事情」,即使新工作會。我只是在大聲思索,不知道將使用此係統的代碼的內部細節。也許我在這裏說的是對你的系統設計完全沒用。 – Gimby

+0

@Mada你想要緩存..?共享哈希映射來保存完成日期和0?或者避免在例程調用時從N-0中觸發數據庫? Db只能保存一天的數據? HashMap jvm shutdonw會發生什麼? – Mani

+0

@Mani基本上,我想緩存一個字符串(鍵)和計數器的值從它到達0直到午夜。所以緩存只有在計數器變爲0並且在午夜之前使用。 – MaDa

回答

相關問題