| | |
| | | RedisConnectionFactory connectionFactory = Objects.requireNonNull(redisTemplate.getConnectionFactory()); |
| | | RedisCacheWriter cacheWriter = RedisCacheWriter.nonLockingRedisCacheWriter(connectionFactory, |
| | | BatchStrategies.scan(yudaoCacheProperties.getRedisScanBatchSize())); |
| | | // 创建 TenantRedisCacheManager 对象 |
| | | return new TimeoutRedisCacheManager(cacheWriter, redisCacheConfiguration); |
| | | // 创建 TimeoutRedisCacheManager 对象 |
| | | TimeoutRedisCacheManager cacheManager = new TimeoutRedisCacheManager(cacheWriter, redisCacheConfiguration); |
| | | // 开启事务感知:@Transactional 方法内的 @CacheEvict / @CachePut 自动延迟到 afterCommit, |
| | | // 避免事务未提交就清缓存被并发读穿写脏值;无事务时立即生效,行为不变 |
| | | cacheManager.setTransactionAware(true); |
| | | return cacheManager; |
| | | } |
| | | |
| | | } |