登录成功会在redis中保存两条数据,第一条是key=登录账号id,value=随机生成token;第二条是key=随机生成token,value=登录账号信息。同一个账号不断登录时,就会先判断key=登录账号id的数据是否存在,存在则再判断key=随机生成token也是否存在,如果存在则删除这个key=随机生成token,然后重新生成新的token并设值。这样就会每次同一个账号登录都只会生成这两条数据,不同的是每次的生成token不一样。
现在的问题是,压力测试使用同一个账号短时间内大量调用登录接口,看redis中key=随机生成token的这条数据没有被删除,,导致生成大量key=随机生成token的数据没有被删除。百度查 也没查到 是啥原因。