Q1: 我說得對,只有這個廠商支持羣集上的Hibernate L2高速緩存嗎?羣集上的休眠L2高速緩存
- 秦始皇對Hibernate(COMERCIAL)
- SwarmCache(自2003年以來未公佈)
- 的JBoss Cache 1.x的
- JBoss緩存2
Q2: 是否有任何替代品休眠二級緩存? (也許一些DB緩存?)
Q1: 我說得對,只有這個廠商支持羣集上的Hibernate L2高速緩存嗎?羣集上的休眠L2高速緩存
Q2: 是否有任何替代品休眠二級緩存? (也許一些DB緩存?)
Q1。 EhCache與分佈式的Hibernate L2 Cache非常相似。 我們正在將此用於我們的項目。
Q2。幾個緩存是可能的。
然而,隨着數據庫 緩存的問題是,它在物理上 數據庫服務器上,所以每個查詢 涉及網絡電話(延遲,帶寬 ..)。這就是應用程序 服務器上緩存的整個點 。
在分佈式情況下,這往往 轉化成當他們 實體之一被修改的時間,這對我們來說是功能 邏輯(和必不可少的 性能失效一個 類別,否則我們會 必須使所有這些 實體無效;這是因爲高速緩存 使整個區域無效,或者是 特定對象,但在 之間必須l OOP這是不好的性能)
和其他人我敢肯定...
因此,這種情況下是不是數據庫密切相關,它通常不會保存我們的Hibernate實體。我們把它放在業務層(而不是數據訪問或Daos)中,直接提供給業務代碼。請注意,對我們來說,它不是透明緩存,而是調用顯式業務服務(負責該緩存:如果數據不存在,則根據需要加載它),以執行操作或傳遞值。
這個緩存中有趣的線程問題:因爲這個緩存被我們的100個Web線程訪問,所以它需要是線程安全的。您可能知道爲什麼線程安全值在每次調用時都是不可變的或克隆的(這通常是性能問題)。所以我們所有的業務緩存都使用不可變對象,並且性能非常好。
EhCache有一個分佈式模式,但我不確定這是否支持Hibernate。不過,我不明白爲什麼它不應該起作用。
由於某些特定的原因,您是否遺漏了JBossCache 3?第一季度銷售價格:
不,我根本不知道它=)。謝謝。 – 2009-08-27 13:23:46
您也可以使用[的Infinispan(JBoss緩存的演進)作爲二級緩存提供!] [1]
[1]:見http://infinispan.blogspot.com/2009/10/infinispan-based-hibernate-cache.html
hibernate-redis LIB將是完美的選擇。這是一個基於Redis的緩存。
爲什麼選擇Redis?它的速度非常快,在雲中運行,並且有像AWS Elasticache這樣的現成雲解決方案,因此您無需自己管理它。
兵馬俑是OSS相同JBoss不知道爲什麼你列爲商業 – 2009-08-28 16:30:08