首页 > 数据库 >redis限流

redis限流

时间:2023-12-02 12:55:05浏览次数:38  
标签:基于 score zset redis Redis 限流

1、基于Redis的数据结构zset

用的redis的zset来计数,score字段寸时间戳,每次请求增加一条数据,并按score移除超时的数据。

最后在给整个key1加个过期时间

2、基于Redis的令牌桶算法

 

 

 

 

 

 

标签:基于,score,zset,redis,Redis,限流
From: https://www.cnblogs.com/guoyu1/p/17871467.html

相关文章

  • linux中redis的安装和设置开启自动启动
    一、安装redis第一步:下载redis安装包wgethttp://download.redis.io/releases/redis-4.0.6.tar.gz复制代码[root@iZwz991stxdwj560bfmadtZlocal]#wgethttp://download.redis.io/releases/redis-4.0.6.tar.gz第二步:解压压缩包tar-zxvfredis-4.0.6.tar.gz[root@iZwz991stxd......
  • Redis为什么是单线程及高并发的原因
    Redis的高并发和快速原因1.redis是基于内存的,内存的读写速度非常快2.redis是单线程的,省去了很多上下文切换线程的时间3.redis使用多路复用技术,可以外理并发的连接。非阻塞I0内部实现采用epol,采用了epol+自己实现的简单的事件框架。epol中的读、写、关闭、连接都转化成了事件,然后......
  • 在redis中,如何在创建key的同时,设置key的过期时间
    1、通过下面的创建key,同时设置过期时间SETkeyvalueEXseconds 示例:setteskey01123ex60  设置key的过期时间是60s,这样在创建的时候,就开始倒计时了。 通过工具看,TTL,会定期的刷新,到0之后,这个key就会被删除了。 60s后,key不存在  如果一个key的TTL......
  • 安装redis_exporter 以及配置prometheus
    安装:1、下载redis_exporterwgethttps://github.com/oliver006/redis_exporter/releases/download/v1.29.0/redis_exporter-v1.29.0.linux-amd64.tar.gz2、解压/usr/local目录下,并重命名#tar-zxvfredis_exporter-v1.29.0.linux-amd64.tar.gz-C/usr/local/#cd/usr/local/#......
  • Docker 安装 Redis 容器 (完整详细版)
    1、获取Redis镜像Docker如果想安装软件,必须先到Docker镜像仓库下载镜像。Docker镜像仓库2、下载Redis镜像命令描述dockerpullredis下载最新版Redis镜像(其实此命令就等同于:dockerpullredis:latest)dockerpullredis:xxx下载指定版本的Redis......
  • Redis事务
    是什么可以一次执行多个命令,本质是一组命令的集合。一个事务中的所有命令都会序列化,按顺序的串行化执行而不会被其他命令插入,不许加塞!能干嘛在一个队列中,一次性、顺序性、排他性的执行一系列命令Redis事务和数据库事务的区别单独的隔离操作Redis的事务仅仅是保证事务里的......
  • centos上安装redis、redis客户端操作、redis使用场景、通用命令
    centos上安装redis#win上装redis#上线--》centos装了--》详细研究#docker装---》配置--》持久化#官网看看-redis源码-----》自己编译-redisstack----》编译过后的可执行文件-6.x版本#咱们刚刚下了几个软件-redis-6.2.14-reids......
  • redis1
    centos上安装rediswin上装redis上线--》centos装了---》详细研究docker装----》配置持久化找官网:-redis源码----》自己编译-redisstack---》编译过后的可执行文件-6.x版本 基于源码,在不同平台编译成相应平台的可执行文件-mac-linux-乌......
  • Redis的事务transactions
    1.Redis的事务仅仅是保证事务里的操作会被连续独占的执行,Redis的命令执行是单线程,2.Redis不保证事务的所有指令可以同时成功或者同时失败,只可以决定是否开始执行全部指令的能力,因此也没有回滚3.Redis可以保证一个事物内的命令会依次执行,不会被其他指令插入 MULTI#事务开始......
  • 如何查看redis中当前的客户端连接并且杀掉某些客户端连接
    查看当前的redisclient信息 进入redis控制台,执行命令clientlist  释放(杀掉)某些客户端 执行命令clientkill<客户端地址> 客户端地址,就是上面的addr=的部分 示例:clientkill10.1.40.156:24830  执行正确,会返回OK,表示客户端连接已经被kill掉了......