fix(shop): 修复商城信息缓存解析逻辑
- 优化缓存数据解析流程,添加空值检查 - 当缓存解析失败时清理无效缓存键 - 改进异常处理机制,避免返回空数据 - 移除调试代码并完善日志记录
This commit is contained in:
@@ -45,12 +45,16 @@ public class ShopWebsiteServiceImpl implements ShopWebsiteService {
|
|||||||
String cacheKey = SHOP_INFO_KEY_PREFIX + tenantId;
|
String cacheKey = SHOP_INFO_KEY_PREFIX + tenantId;
|
||||||
String shopInfo = redisUtil.get(cacheKey);
|
String shopInfo = redisUtil.get(cacheKey);
|
||||||
if (StrUtil.isNotBlank(shopInfo)) {
|
if (StrUtil.isNotBlank(shopInfo)) {
|
||||||
log.info("从缓存获取商城信息,租户ID: {}", tenantId);
|
try {
|
||||||
// try {
|
ShopVo cacheVo = JSONUtil.parseObject(shopInfo, ShopVo.class);
|
||||||
// return JSONUtil.parseObject(shopInfo, ShopVo.class);
|
if (cacheVo != null) {
|
||||||
// } catch (Exception e) {
|
log.info("从缓存获取商城信息,租户ID: {}", tenantId);
|
||||||
// log.warn("商城缓存解析失败,从数据库重新获取: {}", e.getMessage());
|
return cacheVo;
|
||||||
// }
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.warn("商城缓存解析失败,清理缓存后重新获取: {}", e.getMessage());
|
||||||
|
redisUtil.delete(cacheKey);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 直接调用 CMS 服务获取站点信息,然后使用商城专用缓存
|
// 直接调用 CMS 服务获取站点信息,然后使用商城专用缓存
|
||||||
|
|||||||
Reference in New Issue
Block a user