0

我刚刚添加了 Memcached 作为 Hibernate 的第二层缓存。安装缓存后,性能实际上受到了重大影响。所有查询都较慢。我意识到原因可能是因为我的大多数查询都不是基于 id,所以没有使用第二层缓存。

我的问题是不应该不基于 id 的查询直接进入数据库而不访问缓存吗?Aka,在命中缓存之前确定查询是否“适合缓存”的决策?如果是这样,性能不应该更快吗?

4

1 回答 1

0

当我检查 Hibernate 代码时,看起来 Hibernate 在使用 HQL 查询时无法重用缓存(它没有从 HQL 到其缓存机制的编译器)。

我可以建议您宁愿使用fjorm而不是 Hibernate。免责声明:我是 fjorm 的创始人。

于 2013-09-16T14:40:32.667 回答