美文网首页redisRedis实现几个简单功能
Redis通过getset和incr实现复位操作计数器

Redis通过getset和incr实现复位操作计数器

作者: 快乐的bug制造者 | 来源:发表于2018-02-18 09:16 被阅读154次

举例来说,每次当某个事件发生时,进程可能对一个名为 key调用 [INCR] 操作,通常我们还要在一个原子时间内同时完成获得计数器的值和将计数器值复位为 0 两个操作。

可以用命令 GETSET mycounter 0 来实现这一目标。

redis> INCR mycount
(integer) 11

redis> GETSET mycount 0  # 一个原子内完成 GET mycount 和 SET mycount 0 操作
"11"

redis> GET mycount       # 计数器被重置
"0"

相关文章

  • Redis通过getset和incr实现复位操作计数器

    举例来说,每次当某个事件发生时,进程可能对一个名为 key调用 [INCR] 操作,通常我们还要在一个原子时间内同...

  • 分布式限流 - 基于redis

    1,基于redis计数器 1)普通redis incr限流。不能保证原子性image.png2)lua脚本实现计数...

  • Redis随笔

    #Redis的五种数据类型 1、String 常用命令: get、set、incr、decr、getset mse...

  • 基于redis key的分布式资源池锁

    基于redis自带的原子操作setnx,getset等原子操作命令实现资源锁定功能。setnx:将 key 的值设...

  • Redis 之服务限流

    通过redis 的incr命令可以简单实现在单位时间系统的访问量。

  • redis之频率限制

    最近有个分享,关于频率限制的redis实现。 主要是使用redis的命令:incr/decr incr/derc的...

  • php操作redis(string)

    链接redis string 类型常用场景 计数器 string类型的incr和decr命令的作用是将key中储存...

  • Redis原子计数器incr

    一、前言 在一些对高并发请求有限制的系统或者功能里,比如说秒杀活动,或者一些网站返回的当前用户过多,请稍后尝试。这...

  • redis数据操作

    字符串操作 注意getset这个命令 增加减少 incr/decr:如果没有这个key,则默认0,执行命令后加一也...

  • Redis通过incr和expire实现接口限制访问

    或许你会有这样一个需求,一个接口为了防止被刷,要求每秒只允许请求10次。 其实,redis只需要两个命令即可解决!...

网友评论

    本文标题:Redis通过getset和incr实现复位操作计数器

    本文链接:https://www.haomeiwen.com/subject/fdovtftx.html