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