这篇文章将为大家详细讲解有关Redis类型异常报错怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
出现此问题的场景是, 先往redis数据里面放一个int类型数据, 然后通过decrementAndGet获取, 会报上述错误, 后续分析是 编解码器不一致导致的 // 放数据的过程 RBucket<V> bucket = redissonClient.getBucket(key); bucket.set(value) // 获取数据过程 RAtomicLong atomicLong = redissonClient.getAtomicLong(key); return atomicLong.decrementAndGet();
// 放数据的编解码器, 这边codec用的是默认的编解码器, 这里项目里使用的是FST编解码器 commandExecutor.writeAsync(getName(), codec, RedisCommands.SET, getName(), encode(value)); // 取数据的编解码器, 用的codec是String类型的codec, 两个编解码器不一致导致的 commandExecutor.writeAsync(getName(), StringCodec.INSTANCE, RedisCommands.SET, getName(), newValue);
关于“Redis类型异常报错怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。