ORM工具二级缓存是否会引发数据不同步? 2006-12-13 wlmouse 我们使用Hibernate等ORM工具的时候,经常会使用二级缓存,来提高查询效率,减轻数据库的负荷.请问使用二级缓存的话,会不会造成数据不同步?就是数据库的数据变了,但是查询的还是旧数据.还有就是造成数据库不能及时更新.如果应用服务器崩溃,是否会造成缓存中的数据因没有提交到数据库而丢失?如果会发生这种情况,请问应如何避免?
wlmouse 2006-12-16 19:02 能说的具体一点吗?最好说些要注意的地方和要注意的方法。比如在增删改的时候要注意什么?缓存多久刷新比较好?如何防止应用服务器崩溃的时候,缓存里的数据丢失?
banq 2006-12-19 10:47 说实话,Hibernate3本身不透明,所以,你无法直接操作缓存,只能通过Hibernate3自己定义的一些方法来实现,具体可参考Hibernate3这些方法说明,总得思路就是:本来缺省情况下,缓存和数据库是同步的,现在通过这些方法可以不同步了。当然你可以获得缓存的大小等一些信息。 不过,我个人不喜欢这样隔着靴子绕痒痒,所以,没有研究太深入,我个人实践都是使用JdonFramework自己的缓存。
banq 2006-12-19 10:49 噢,前面说的有点偏题,Hibernate二级缓存看这篇文章: http://www.jdon.com/jive/article.jsp?forum=62&thread=25431