sql >> Database >  >> NoSQL >> Redis

hoe verschillende ttl voor elke redis-cache te configureren bij gebruik van @cacheable in springboot2.0

U kunt voor elke cache verschillende vervaltijden configureren met slechts één CacheManager door voor elke cache verschillende configuraties te maken en deze in een map te plaatsen waarmee u de CacheManager maakt.

Bijvoorbeeld:

@Bean
RedisCacheWriter redisCacheWriter() {
    return RedisCacheWriter.lockingRedisCacheWriter(jedisConnectionFactory());
}

@Bean
RedisCacheConfiguration defaultRedisCacheConfiguration() {
    return RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofSeconds(defaultCacheExpiration));
}

@Bean
CacheManager cacheManager() {
    Map<String, RedisCacheConfiguration> cacheNamesConfigurationMap = new HashMap<>();
    cacheNamesConfigurationMap.put("cacheName1", RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofSeconds(ttl1)));
    cacheNamesConfigurationMap.put("cacheName2", RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofSeconds(ttl2)));
    cacheNamesConfigurationMap.put("cacheName3", RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofSeconds(ttl3)));

    return new RedisCacheManager(redisCacheWriter(), defaultRedisCacheConfiguration(), cacheNamesConfigurationMap);
}


  1. Hoe vraag je *juist* Redis van Tornado?

  2. Schrijf je eerste adviseur

  3. MongoDB:Hoe een query uit te voeren voor records waarbij het veld null of niet is ingesteld?

  4. Hoe een veel-op-veel-relatie te organiseren in MongoDB