【发布时间】:2020-12-20 01:45:26
【问题描述】:
假设我有一个方法A,也就是@Cacheable,但是很多线程可能同时使用相同的参数访问它。
我想确保只有第一个线程创建缓存,以防止所有其他线程处理他们的请求。
我当然可以使用同步来包装方法。但这会导致所有线程都会阻塞该方法。而且,synchronized 不会包装 @Cacheable AOP。
那么,有没有办法使用开箱即用的 Spring 来实现呢?
【问题讨论】:
-
您使用的是哪个缓存提供程序?
-
@dnault Redis 和 Redisson 的 CacheManager 实现。
标签: java spring spring-cache redisson