问题描述:
生产环境redis 查询出错,排查原因才发现,在做login记录缓存到redis,发现有两处地方,set key 时同名了,导致在get key 获取 导致出错!
如下,你在“GET”只是对“SET” 为String 类型的key获取,而“Lists”类型 用“GET”获取,就会出现 WRONGTYPE Operation against a key holding the wrong kind of value 这种报错方式
问题定位:
由于你 set 了一个Lists类型的 key ,而你在获取 时却用了非 Lists 的操作方法获取。
db.Get().Do("SET", userId+"login",1)
db.Get().Do("LPUSH", userId+"login",1)
不同数据类型对应不同的获取 value 方式,SET key ==》GET key ; LPUSH ==》LINDEX 等;
❤如果文章对您有所帮助,就在文章的右上角或者文章的末尾点个赞吧!(づ ̄ 3 ̄)づ
❤如果喜欢大白兔分享的文章,就给大白兔点个关注吧!(๑′ᴗ‵๑)づ╭❤~
❤对文章有任何问题欢迎小伙伴们下方留言或者入群探讨【群号:708072830】
❤鉴于个人经验有限,所有观点及技术研点,如有异议,请直接回复讨论(请勿发表攻击言论)。