gpt4 book ai didi

java - 如果数据在捕获时间内在数据库中更新,如何在 hibernate 中处理?

转载 作者:行者123 更新时间:2023-12-02 13:39:41 26 4
gpt4 key购买 nike

我正在使用hibernate二级缓存机制(ehcache)。我给了 10 秒作为缓存时间,如下所示

<cache name="employee" maxEntriesLocalHeap="10000" eternal="false"
timeToIdleSeconds="10" timeToLiveSeconds="10">
<persistence strategy="localTempSwap"/>
</cache>

如果假设数据库中的数据在 10 秒缓存时间内更新,我将获得最新数据还是捕获数据?如何处理这种情况?

最佳答案

由于您使用的缓存配置了生存时间空闲时间,因此只要该条目在缓存中保持有效,至少每 10 秒访问一次。

鉴于您所描述的情况,我强烈建议不要使用 TTI。

至于更通用的答案:激活缓存的那一刻,您就打开了一个不一致的窗口。如果您的应用程序逻辑无法处理它,您需要建立一个立即失效机制,该机制将立即从缓存中刷新条目。

但是,没有标准的方法可以做到这一点,因此这成为您的责任。

关于java - 如果数据在捕获时间内在数据库中更新,如何在 hibernate 中处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42800620/

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