refactor: 修改缓存处理逻辑.

This commit is contained in:
lijiahang
2023-11-21 13:53:33 +08:00
parent 69c71055d9
commit 5c21dd1144
22 changed files with 358 additions and 146 deletions

View File

@@ -45,8 +45,6 @@ public class HostController {
@Resource
private HostConfigService hostConfigService;
// fixme host_config 设置为缓存
@OperatorLog(HostOperatorType.CREATE)
@PostMapping("/create")
@Operation(summary = "创建主机")

View File

@@ -6,12 +6,12 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.orion.lang.define.wrapper.DataGrid;
import com.orion.lang.utils.Strings;
import com.orion.lang.utils.collect.Lists;
import com.orion.ops.framework.biz.operator.log.core.uitls.OperatorLogs;
import com.orion.ops.framework.common.constant.ErrorMessage;
import com.orion.ops.framework.common.security.PasswordModifier;
import com.orion.ops.framework.common.utils.Valid;
import com.orion.ops.framework.redis.core.utils.RedisMaps;
import com.orion.ops.framework.redis.core.utils.barrier.CacheBarriers;
import com.orion.ops.module.asset.convert.HostIdentityConvert;
import com.orion.ops.module.asset.dao.HostConfigDAO;
import com.orion.ops.module.asset.dao.HostIdentityDAO;
@@ -118,13 +118,12 @@ public class HostIdentityServiceImpl implements HostIdentityService {
// 查询数据库
list = hostIdentityDAO.of().list(HostIdentityConvert.MAPPER::toCache);
// 设置屏障 防止穿透
RedisMaps.checkBarrier(list, HostIdentityCacheDTO::new);
CacheBarriers.checkBarrier(list, HostIdentityCacheDTO::new);
// 设置缓存
RedisMaps.putAllJson(HostCacheKeyDefine.HOST_IDENTITY.getKey(), s -> s.getId().toString(), list);
RedisMaps.setExpire(HostCacheKeyDefine.HOST_IDENTITY);
RedisMaps.putAllJson(HostCacheKeyDefine.HOST_IDENTITY, s -> s.getId().toString(), list);
}
// 删除屏障
RedisMaps.removeBarrier(list);
CacheBarriers.removeBarrier(list);
// 转换
return list.stream()
.map(HostIdentityConvert.MAPPER::to)

View File

@@ -4,13 +4,13 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.orion.lang.define.wrapper.DataGrid;
import com.orion.lang.utils.Strings;
import com.orion.lang.utils.collect.Lists;
import com.orion.ops.framework.biz.operator.log.core.uitls.OperatorLogs;
import com.orion.ops.framework.common.constant.ErrorMessage;
import com.orion.ops.framework.common.security.PasswordModifier;
import com.orion.ops.framework.common.utils.CryptoUtils;
import com.orion.ops.framework.common.utils.Valid;
import com.orion.ops.framework.redis.core.utils.RedisMaps;
import com.orion.ops.framework.redis.core.utils.barrier.CacheBarriers;
import com.orion.ops.module.asset.convert.HostKeyConvert;
import com.orion.ops.module.asset.dao.HostConfigDAO;
import com.orion.ops.module.asset.dao.HostIdentityDAO;
@@ -132,13 +132,12 @@ public class HostKeyServiceImpl implements HostKeyService {
// 查询数据库
list = hostKeyDAO.of().list(HostKeyConvert.MAPPER::toCache);
// 设置屏障 防止穿透
RedisMaps.checkBarrier(list, HostKeyCacheDTO::new);
CacheBarriers.checkBarrier(list, HostKeyCacheDTO::new);
// 设置缓存
RedisMaps.putAllJson(HostCacheKeyDefine.HOST_KEY.getKey(), s -> s.getId().toString(), list);
RedisMaps.setExpire(HostCacheKeyDefine.HOST_KEY);
RedisMaps.putAllJson(HostCacheKeyDefine.HOST_KEY, s -> s.getId().toString(), list);
}
// 删除屏障
RedisMaps.removeBarrier(list);
CacheBarriers.removeBarrier(list);
// 转换
return list.stream()
.map(HostKeyConvert.MAPPER::to)

View File

@@ -10,6 +10,7 @@ import com.orion.ops.framework.biz.operator.log.core.uitls.OperatorLogs;
import com.orion.ops.framework.common.constant.ErrorMessage;
import com.orion.ops.framework.common.utils.Valid;
import com.orion.ops.framework.redis.core.utils.RedisMaps;
import com.orion.ops.framework.redis.core.utils.barrier.CacheBarriers;
import com.orion.ops.module.asset.convert.HostConvert;
import com.orion.ops.module.asset.dao.HostConfigDAO;
import com.orion.ops.module.asset.dao.HostDAO;
@@ -155,13 +156,12 @@ public class HostServiceImpl implements HostService {
// 查询数据库
list = hostDAO.of().list(HostConvert.MAPPER::toCache);
// 设置屏障 防止穿透
RedisMaps.checkBarrier(list, HostCacheDTO::new);
CacheBarriers.checkBarrier(list, HostCacheDTO::new);
// 设置缓存
RedisMaps.putAllJson(HostCacheKeyDefine.HOST_INFO.getKey(), s -> s.getId().toString(), list);
RedisMaps.setExpire(HostCacheKeyDefine.HOST_INFO);
RedisMaps.putAllJson(HostCacheKeyDefine.HOST_INFO, s -> s.getId().toString(), list);
}
// 删除屏障
RedisMaps.removeBarrier(list);
CacheBarriers.removeBarrier(list);
// 转换
return list.stream()
.map(HostConvert.MAPPER::to)