1. 在一些项目中,有时候需要记录一些数字,比如需要知道每天微信推送了多少条模板消息或者其他的一些需求,或者一个功能:用户扫码当天达到20次即不再让用户扫码,或者秒杀活动中,这件商品只规定卖200件,如果我们使用数据库来作为查询,那么并发量特别大,db就会抗不住,我们就需要用中间件来削峰,并且配合redis, 当然,我们的电商项目肯定没有那么大,并发量也不会那么大,为了避免超卖,我们使用mysql中的乐观锁也可以,但是为了更快,我们就可以使用redis中的incr来提高效率
  2. 为什么可以使用redis中的incr功能来避免超卖那?因为redis中的Incrby是原子操作, 那怕是多线程的情况下 , 因为是原子操作 , 就只能有一个线程对Key进行修改 , 其他线程修改不了。所以这就避免了超卖的现象,
  3. incr在python中的使用:
import redisredis_client = redis.Redis(host="localhost",port=6379,db=0)redis_client.set('num', 1)
print(redis_client.get("num").decode())# 使用incr来当中计数器
redis_client.incr("num", 1)
redis_client.incr("num", -2)
print(redis_client.get("num").decode())# 如果执行incr增加时string不存在,那么会将这个string初始化为0,然后只能执行加操作
if redis_client.get("num1"):print(redis_client.get("num1").decode())
redis_client.incr("num1", 1)
print(redis_client.get("num1").decode())

执行结果:

1
0
1
  1. 常见命令:decr 减 incrbyfloat 操作小数

python中redis incr的使用相关推荐

  1. Python中 redis StrictRedis对象操作string类型

    Python中 redis StrictRedis对象操作string类型 准备 在桌面上创建redis目录 使用pycharm打开 redis目录 创建redis_string.py文件 from ...

  2. python数据存储系列教程——python中redis数据库操作:连接、增删查改、多级路径

    全栈工程师开发手册 (作者:陈玓玏) python教程全解 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品 ...

  3. python连接redis哨兵_Python redis.sentinel方法代码示例

    本文整理汇总了Python中redis.sentinel方法的典型用法代码示例.如果您正苦于以下问题:Python redis.sentinel方法的具体用法?Python redis.sentine ...

  4. python 中常见的面试练习题

    python 中常见的面试题 语言特性 编码规范 数据类型-字符串 数据类型 - 列表 数据类型 - 字典 数据类型 - 综合 操作类题目 高级特性 正则表达式 其他内容 算法和数据结构 爬虫类 网络 ...

  5. python中计算带分数_聊聊 python 数据处理全家桶(Redis篇)

    作者:星安果 来源:AirPython 前面两篇文章聊到了 python 处理 Mysql.Sqlite 数据库常用方式,本篇文章继续说另外一种比较常用的数据存储方式:Redis Redis:Remo ...

  6. Python中使用Redis的批处理工具pipeline(这种方法从底层思考效率还是低于“订阅发布机制”)

    一.pipeline出现的原因 1.Redis执行命令的过程 redis客户端执行一条命令的过程: 发送命令-〉命令排队-〉命令执行-〉返回结果 使用python给redis发送命令时的过程: 客户端 ...

  7. python读取cad中的文字,使用Python读写Redis字符串

    1.简介 Redis 是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorte ...

  8. redis基础入门及Python中的简单使用

    1.什么是Redis? Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库.Redis全称为:Remote Dictionary Ser ...

  9. Python操作Redis中的hash

    Redis 数据库hash数据类型是一个string类型的key和value的映射表,适用于存储对象.Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿).  Python的re ...

最新文章

  1. 登录账号,玩猜数字游戏
  2. ML/DL之预测分析类:利用机器学习算法进行预测分析的简介、分析、代码实现之详细攻略
  3. 【GAN优化】GAN优化专栏上线,首谈生成模型与GAN基础
  4. poj 3411(DFS多点访问)
  5. 关于oracle 安装下的LINUX系统参数的优化
  6. 使用Java的BlockingQueue实现生产者-消费者
  7. go调用python3_在python3中使用google的protobuf以及gRPC-Go语言中文社区
  8. 从0到1搭建移动App功能自动化测试平台(2):操作iOS应用的控件
  9. 洛谷——P1425 小鱼的游泳时间
  10. 基础训练(一~五)题解
  11. 个人查阅资料-Sql语句
  12. TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub)[转]
  13. 电脑怎么开护眼模式_绿色电脑桌面、手机护眼模式真的可以护眼?
  14. 如何用OD的跟踪功能分析虚拟机保护
  15. journalctl基本介绍
  16. # 你也可以在你的微信 or QQ头像添加小国旗了,超简单!
  17. grafana-reporter
  18. php调用itunes,使用cURL和PHP检索iTunes App Store XML
  19. Linux之C++获取系统用户名
  20. vue中src目录下的文件的说明

热门文章

  1. r语言如何计算均方误差
  2. Idea 打包JAVA项目
  3. PostgreSQL高可用中间件—Pgpool-Ⅱ
  4. 2009奥巴马的秋季开学演讲稿
  5. linux创建磁盘的命令,linux中创建磁盘分区的命令是什么
  6. DNN中的BP和RNN中的BPTT推导
  7. AdaBoost算法-课堂笔记
  8. 经典五大算法思想-------入门浅析
  9. redhat6.3 jfreechar中文乱码解决途径
  10. 为什么都瞧不起培训班出来的程序员?