Hibernate緩存併發策略是否也適用於其查詢緩存(例如,可緩存查詢獲取一些標量數據,然後兩個查詢同時修改該標量數據)?如果不是,查詢的併發更新(或讀取/更新)會發生什麼情況?如果是,如何爲查詢緩存指定它們?Hibernate查詢緩存併發策略
回答
該策略如下。
時間戳高速緩存記錄每個表的最後更新時間戳。
每次執行一次可緩存查詢並且結果都在查詢緩存中時,Hibernate會檢查查詢結果的時間戳比查詢涉及的每個表的更新時間戳更大(更近)。如果更大,那麼結果不會過時,並且返回緩存的結果。如果降低,則緩存的結果可能過時,並且對數據庫執行查詢。
噢!感謝你的回答。這是否意味着查詢緩存本身永遠不會更新,但只會失效,從而避免任何併發更新問題? – shrini1000 2012-03-14 08:36:11
我不知道緩存如何處理緩存的併發更新。但它是一個從多個線程訪問的緩存。我猜想使用了同步和併發集合。你並不需要關心。 – 2012-03-14 08:41:42
好吧,對於二級緩存,非嚴格讀寫和讀寫策略的行爲會有所不同,並會影響性能。所以我想知道是否類似的東西也適用於查詢緩存,影響其性能。因此,這個問題。 – shrini1000 2012-03-15 02:55:16
- 1. Hibernate查詢緩存驅逐策略
- 2. 緩存策略查詢的數據
- 3. 搜索查詢的緩存策略
- 4. 緩存策略
- 5. 緩存併發查詢
- 6. Akamai緩存策略
- 7. NSURLRequest緩存策略
- 8. iOS緩存策略
- 9. ServiceStack緩存策略
- 10. 緩存策略,AFNetworking
- 11. 根實體及其集合的不同緩存併發策略(Hibernate with EHCache)?
- 12. Hibernate一級緩存vs查詢緩存
- 13. Hibernate的緩存和MySQL查詢緩存
- 14. 查詢Hibernate的緩存
- 15. 緩存常見查找數據 - 策略
- 16. Firebase +滑翔,緩存策略
- 17. Membase緩存過期策略
- 18. Android MapView POI緩存策略
- 19. Rails碎片緩存策略
- 20. 使用IQueryables緩存策略
- 21. 瞭解緩存策略
- 22. parse.com的緩存策略
- 23. PHP/Magento - 緩存策略
- 24. UIImageView緩存策略-AFNewtorking
- 25. Azure緩存組策略
- 26. 安裝HLS緩存策略
- 27. Azure網站緩存策略
- 28. iOS:AFNetworking的AFHTTPSessionManager緩存策略
- 29. 星火緩存策略
- 30. 嚴格VS非嚴格NHibernate的緩存併發策略
這是一篇很好的文章:http://tech.puredanger.com/2009/07/10/hibernate-query-cache/ – shrini1000 2012-04-06 04:48:56