/// <summary> /// 有可能没有Redis服务,则将异常捕捉,并停止使用Redis缓存 /// </summary> private RedisValue GetRedisValue(RedisInputKey redisInputKey) { RedisValue value = default(RedisValue); string key = GetKeyByRedisInputKey(redisInputKey); try { value = GetRedisValueByKey(key); if (value != null) { return(value); } lock (_lock) { value = GetRedisValueByKey(key); if (value == null) { UpdateByKey(redisInputKey); } } value = GetRedisValueByKey(key); } catch (Exception e) { RedisControl.StopUseRedis(); // 日志输出 } return(value); }
public RedisValue GetRedisByRedisInputKey(RedisInputKey redisInputKey) { if (!RedisControl.UseRedis()) { return(default(RedisValue)); } var result = GetRedisValue(redisInputKey); // 刷新Redis之后还无法获取正确的值,则记录原因 if (result == null) { // 日志输出 } ; return(result); }