程序出现数值每次从redis获取不一样

来源:互联网 发布:淘宝商品详情页怎么做 编辑:程序博客网 时间:2024/04/30 15:20

  • 背景

    • 组员测试时发现数据每次获得的结果不一样

  • 思路

    • 猜想是不是redis有存多份数据
    • 查证之后发现mcat默认会建16个db
    • 而查询会根据dbindex查找,且在项目中存在传入dbIndex的情况
    • 验证方式1:编码测试,在默认set一个keyA后,传入dbIndex值set一个keyB,然后获取keyA发现获取结果不对,但是传入dbIndex为0get得到的结果是对的
    • 验证方式2:查看源码,发现db为client的一个属性,并且在select传入dbIndex后完成操作释放连接后并没有充值dbIndex值
    • 至此,找到问题

  • 处理

    • 增加接口重载,默认传入dbIndex为0
0 0
原创粉丝点击