1

我将 ehcache-spring-annotations 1.2.0(Google 代码)与 Spring 3.0.2 一起使用。

我用@Cacheable 注释了一个DAO 方法。缓存实际发生(通过日志记录和 ehCache mbean 验证)。但是,当有缓存命中时,该方法仍然需要 50 毫秒到 100 毫秒才能执行。

起初,我怀疑 Hibernate 事务仍在创建中,因此我创建了一个使用 @Cacheable 注释的单独类,并委托给使用 @Transactional 注释的原始 DAO。它没有任何明显的区别。

我做错了什么,还是我必须降低我的期望?

4

1 回答 1

1

您的期望并不太高,我希望缓存命中为 0-1 毫秒。这些可能性浮现在脑海中:

(1) 如果有自定义密钥生成器,请检查其中是否存在错误/减速。(2) 验证缓存设置是否使该缓存不被强制仅存储在磁盘上。

于 2013-06-11T02:27:58.360 回答