gpt4 book ai didi

hibernate - Ehcache 存储但不检索(Ehcache + Hibernate)

转载 作者:行者123 更新时间:2023-12-03 04:18:46 27 4
gpt4 key购买 nike

我正在使用 ehcache 通过 hibernate 缓存实体。

查看ehcache监视器,一切似乎都工作正常(刷新将缓存计数设置为零,然后重新加载将计数放回一),但是如果我直接在数据库上更改某些值并重新加载,则会显示更新的值,而不是显示缓存的那个。我不知道这是否是预期的行为,但作为一个缓存,这样做会很奇怪。

我已经尝试了所有找到的解决方案来解决这个问题,但没有成功。

最佳答案

这是预期的行为。数据库是所有正确数据的来源,缓存只是为了加快对数据库中数据的访问速度。如果数据不同,那么根据定义,缓存就是错误的。

因此,如果您重新加载,缓存将从数据库中重新加载。

如果通过 Hibernate 保存数据,则数据将写入缓存和数据库。当您有多个线程/进程读取或写入时,这里可能会出现问题。有关如何管理此问题,请参阅 caching strategies in the Hibernate documentation

一般来说,更新数据库会直接导致问题,缓存将不会有正确的数据,除非通知它必须使其拥有的数据无效和/或从数据库重新加载。

关于hibernate - Ehcache 存储但不检索(Ehcache + Hibernate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11549591/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com