feat: 新增通过配置信息完成Caffeine缓存管理器的分区

dev.data.processing.dataTreating
面包骑士 2024-10-01 19:54:43 +08:00
parent 0f0883a781
commit a28e5d751b
3 changed files with 19 additions and 19 deletions

View File

@ -1,7 +1,8 @@
package com.muyu.common.caffeine.bean;
import com.github.benmanes.caffeine.cache.Cache;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.caffeine.CaffeineCache;
@ -10,6 +11,7 @@ import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
/**
@ -19,8 +21,13 @@ import java.util.ArrayList;
* @CreatedDate: 2024/9/26 11:52
* @FilePath: com.muyu.common.caffeine.config
*/
@Slf4j
@Component
public class CaffeineManager {
@Value("#{'${cacheNames}'.split(',')}")
private List<String> cacheNames;
/**
*
* @return
@ -28,21 +35,15 @@ public class CaffeineManager {
@Bean
public CacheManager cacheManager() {
SimpleCacheManager cacheManager = new SimpleCacheManager();
cacheManager.setCaches(getCaches());
cacheManager.setCaches(cacheNames.stream()
.map(name -> new CaffeineCache(
name,
Caffeine.newBuilder()
.recordStats()
.build()))
.toList());
log.info("缓存管理器初始化完成,缓存分区:{}", cacheNames);
return cacheManager;
}
private ArrayList<CaffeineCache> getCaches() {
ArrayList<CaffeineCache> caches = new ArrayList<>();
// 故障信息缓存
caches.add(new CaffeineCache("fault", Caffeine.newBuilder().build()));
// 围栏信息缓存
caches.add(new CaffeineCache("fence", Caffeine.newBuilder().build()));
// 预警策略规则缓存
caches.add(new CaffeineCache("warming", Caffeine.newBuilder().build()));
return caches;
}
}

View File

@ -28,10 +28,7 @@ import java.io.IOException;
public class GoOnlineRabbitConsumer {
@Resource
private RedisTemplate<String,String> redisTemplate;
// @Resource
// private SimpleCacheManager simpleCacheManager;
@Resource
private CacheUtils<String,String> cacheUtils;
@RabbitListener(queuesToDeclare = {@Queue(RabbitConstants.GO_ONLINE_QUEUE)})

View File

@ -68,3 +68,5 @@ spring:
logging:
level:
com.muyu.system.mapper: DEBUG
cacheNames: fault,fence,warming