我正在使用带有L2缓存机制的Hibernate。我遇到了一种情况,如果数据库表中的数据为空,则L2缓存不起作用,每次调用转到数据库时,因为在L2缓存中找不到它。是行为还是错误?
发布于 2014-09-19 18:05:15
这是缓存的行为。即使数据库中有数据,如果在L2缓存中找不到数据,调用也会转到数据库。这没什么问题。
如果请求的数据包含在缓存中(缓存命中),则可以通过简单地读取缓存来处理此请求,这是相对较快的。否则(缓存未命中),数据必须重新计算或从其原始存储位置获取,这相对较慢。
检查Cache on Wikipedia。第一段本身就会说明这一点。
https://stackoverflow.com/questions/25929213
复制相似问题