jedis 偶尔会返回错误的数据

小灰狼 2016-06-13 05:51:15
有木有人用过 jedis 的?
最近使用 jedis 测试时,发现使用 jedis.get(byte[])时,会返回其它键的数据,造成数据读取错误
发生机率不是很大,但是一旦发生之后,再次发生错误的机率会变大很多
...全文
278 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
小灰狼 2016-06-17
  • 打赏
  • 举报
回复
引用 4 楼 u011619071 的回复:
看一下 获取jedis实例部分,是否线程安全,如果不安全 会造成楼主说的这种情况。
测试时我用的是单线程 拿出来的字节数组反序列化再进行类型转换时抛出 ClassCastException。 但这个几乎是不可能的,因为我写入对象时,key 中有前缀和类型关联,比如 Employee a = new Employee(); a.setId(100); 这个对象的 key = UTF8Encoding("Emp_100"); 而 Department b = new Department(); b.setId(200); 这个对明的 key = UTF8Encoding("Dep_200"); 在测试时,差不多1W次左右会出现一次错误,从 redis 中取到的字节数组反序列化后得到的是另外一个类型的对象。但是如果用这个 key 再次获取,得到的数据又是正确的了! 强调一下,我是在单线程环境下测试的!
X元素 2016-06-16
  • 打赏
  • 举报
回复
看一下 获取jedis实例部分,是否线程安全,如果不安全 会造成楼主说的这种情况。
小白晒太阳 2016-06-16
  • 打赏
  • 举报
回复
jedis.get(byte[])你用这个方法时,测试例子是什么,最好贴一下,感觉应该是你测试例子写的有问题
小白晒太阳 2016-06-16
  • 打赏
  • 举报
回复
jedis.get(String key) 用这个方法
小灰狼 2016-06-15
  • 打赏
  • 举报
回复
没有人吗? 自己顶一下

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧