问题引出
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的时长

redis中的increment()方法遇到的问题记录相关推荐

  1. redis——Redis中的LRU算法改进

    redis通常使用缓存,是使用一种固定最大内存的使用.当数据达到可使用的最大固定内存时,我们需要通过移除老数据来获取空间.redis作为缓存是否有效的重要标志是如何寻找一种好的策略:删除即将需要使用的 ...

  2. HyperLogLog原理与在Redis中的使用

    Redis-HyperLogLog 基于HyperLogLog算法,使用极小的空间完成巨量运算 Redis 中HyperLogLog 基本使用 常用命令 PFADD key element [elem ...

  3. redis中的multi和pipeline

    事务块 multi redis中的 multi 方法,提供了一个队列用于缓存多个指令,在客户端调用 exec 后将该队列中的指令批量执行,执行过程中不会被其他指令干扰(具有原子性). 客户端每发送一个 ...

  4. Redis基础,Linux下安装Redis和hredis,C++调用Redis,Redis中字符串设计

    文章目录 一.Redis是什么 Redis架构 Redis优势 Redis应用场景 二.Linux下载安装Redis(Ubuntu系统) 了解Redis版本 在线安装Redis 启动Redis服务端 ...

  5. vue 中 Promise 使用方法

    1. Promise 基本概念: Promise是一个构造函数,所以可以 new 出一个Promise的实例: 在Promise上有两个函数 resolve (成功之后的回调函数)和 reject ( ...

  6. java redis自增操作_【转载】关于spring boot使用redis的increment()方法自增问题

    需求是限制IP频繁访问某接口,用的方案是使用redis记录访问IP的值,先设定好初始值,每次访问自增,达到某限定值后,进行阻止. 用的是自定义工具类,使用spring封装的spring-data-re ...

  7. redis mysql 原子计数器_使用redis的increment()方法实现计数器功能案例

    一直知道redis可以用来实现计数器功能,但是之前没有实际使用过,昨天碰到一个需求:用户扫码当天达到20次即提示:当日扫码次数达到上限! 当时就想到使用redis的递增方法increment()来实现 ...

  8. java用redis缓存的步骤_详解在Java程序中运用Redis缓存对象的方法|chu

    这段时间一直有人问如何在Redis中缓存Java中的List 集合数据,其实很简单,常用的方式有两种: 1. 利用序列化,把对象序列化成二进制格式,Redis 提供了 相关API方法存储二进制,取数据 ...

  9. php 分布式 session,浅析PHP分布式中Redis实现Session的方法

    本文介绍的是PHP分布式中Redis实现Session的方法,下面话不多说,直接先来看两个方法是什么 方法一: 找到配置文件php.ini,修改为下面内容,保存并重启服务 session.save_h ...

最新文章

  1. nginx 负载均衡示例
  2. 图灵机原理三体中人计算机,有关计算机中人列计算机的问题
  3. JZOJ 5794. 2018.08.10【2018提高组】模拟A组省选 旅行
  4. 研究 Dubbo 网卡地址注册时的一点思考
  5. [引]VS2005 之 Visual Basic 程序的结构
  6. 初学C语言没有项目练手怎么行,这17个小项目收下不谢
  7. 任正非:华为三十年大限快到了,想不死就得新生
  8. 日本人的幼儿教育,看一看还是有意…
  9. java统计字符串数字出现次数_java实现统计字符串中大写字母,小写字母及数字出现次数的方法示例...
  10. 【知识图谱】从六个方面解析知识图谱的价值和应用
  11. Unity 3D游戏五:打飞碟
  12. fft和freqz的区别
  13. 将 npm/yarn 的源地址替换成国内镜像的源地址
  14. Log4j 漏洞修复检测 附检测工具
  15. RabbitMQ入门中篇
  16. (Error -6311) PRSC module failed to write to a register. 问题的探讨
  17. 嵌入式LINUX系统程序开发
  18. 如何做一个基于微信酒店预订小程序系统毕业设计毕设作品
  19. I题 hdu 1234 开门人和关门人
  20. 三十、Fluent两种蒸发-冷凝模型理论及设置

热门文章

  1. 阿里云 apt软件云。ubuntu16 17适用
  2. [CF869E]The Untended Antiquity
  3. 【翻译】Paparazzi: Surface Editing by way of Multi-View Image Processing
  4. easypoi 多sheet导入_easy-poi: Easy-POI是一款Excel导入导出解决方案组成的轻量级开源组件。...
  5. 计算机二级考试-Java-模拟试题
  6. 张鑫溢:9.28黄金原油走势分析及操作建议指导.
  7. java中整数的整数次方_数值的整数次方java
  8. WebRTC源码下载与编译
  9. 计算机硬件故障智能检测软件,电脑硬件故障检测方法和检测工具推荐
  10. 数据分析之人力资源管理驾驶舱