irpas技术客

redis中的increment()方法遇到的问题记录_不喜 勿喷_redis的increment方法

网络投稿 7549

问题引出 1、项目中需要使用redis对key进行有效时长设置 2、在对该key进行有效时长设置时同时需要原子性的增加该key对应的值 3、每次获取当前key对应的value进行大小判断从而进行业务逻辑处理 产生的问题 1、使用set方法直接设置key的有效时长时,该操作将会重置key的有效时长 2、使用increment()方法时该方法会在key不存在时redis会自动建立key并对该key值进行加一操作,但是该新生成的key将不会有过期时间 解决方法 1、对需要set到redis中的key设置一个初始值1并设置该key的有效时长 2、使用increment()方法进行增加后,该方法会返回增加后的值,该值一般情况下一定是大于1的 3、判断如果当前key的值等于1时就说明存在在increment()方法执行时,当前key刚好过期。当前的key是由redis自动执行的加一操作,但是该key是不具备过期时长设置的。此时需要对该key重新设置key的时长


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。