我必须整合spring和ehcache,并尝试用blockingCache模式来实现它
<ehcache:annotation-driven/>
共享(默认)和方法的自填充缓存范围有一个选项。你能解释一下有什么区别吗?
还有带有selfPopulating标志的注释@Cacheable
根据我在一些帖子上读到的
它说当使用shared时只创建一个实例,并且每次使用相同的缓存名称时都使用相同的实例,所以如果我将selfPopulating标志用作一种方法,
所有试图访问使用 @Cacheable 注释且 selfPopulating 标志设置为 true的其他方法的所有线程都将暂停,这是我不想要的
<ehcache:annotation-driven/>
另一方面,当self-populating-cache-scope = method为所有使用 @Cacheable 注释的方法创建单独的实例时,selfPopulating 标志设置为 true,因此不会产生问题。
但是在这种情况下,当我尝试使用@TriggerRemove删除一个元素并给出 @Cacheable 中使用的缓存名称时,它会在每个单独的实例中搜索以找到该值吗?这不是开销吗?