sql >> データベース >  >> NoSQL >> Redis

springboot2.0で@cacheableを使用するときにredisキャッシュごとに異なるttlを構成する方法

    キャッシュごとに異なる構成を作成し、それらをCacheManagerの作成に使用するマップに配置することで、1つのCacheManagerのみを使用してキャッシュごとに異なる有効期限を構成できます。

    例:

    @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. Redis:ソートされたセットのスコアの合計

    2. スキーマを定義せずにMongooseをどのように使用しますか?

    3. マングース、検索、特定のプロパティを返す

    4. ビッグデータ処理エンジン–どちらを使用しますか?:パート1