随笔分类 -  Redis

Redis
摘要:🧠 一、ZSet 是什么? ZSet(Sorted Set)= 有序集合 元素 不重复(唯一 key),但可以有相同的分值(score)。 元素按照 score 从小到大排序。 支持按 score 范围 / 排名区间 查询,非常高效。 语法示例: ZADD user_score 80 user1 阅读全文
posted @ 2025-10-25 08:59 郭慕荣 阅读(83) 评论(0) 推荐(0)
摘要:一、Redis 布隆过滤器与 Redisson 简介 布隆过滤器(Bloom Filter)是一种概率型数据结构,用于快速判断一个元素 “是否存在于集合中”。它的特点是: 优点:空间效率极高(远小于传统集合)、查询速度快(O (k),k 为哈希函数数量); 缺点:存在误判率(可能把 “不存在的元素” 阅读全文
posted @ 2025-10-16 09:41 郭慕荣 阅读(111) 评论(0) 推荐(1)
摘要:参考地址:https://www.cnblogs.com/irobotzz/p/18271384 阅读全文
posted @ 2025-06-08 11:24 郭慕荣 阅读(27) 评论(0) 推荐(0)
摘要:我们在项目中使用redis,肯定不会是单点部署Redis服务的。因为单点部署一旦宕机,就不可用了。为了实现高可用,通常的做法是,将数据库复制多个副本以部署在不同的服务器上,其中一台挂了也可以继续提供服务。Redis 实现高可用有三种部署模式:主从模式,哨兵模式,集群模式。1.主从模式主从模式中,Re 阅读全文
posted @ 2023-04-28 18:54 郭慕荣 阅读(499) 评论(0) 推荐(0)
摘要:一、键值设计1. key名设计【建议】: 可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:idredis使用的时候注意命名空间,一个项目一个命名空间,项目内业务不同命名空间也不同。一般情况下: 1) 第一段放置项目名或缩写 如 project 2) 第二 阅读全文
posted @ 2023-04-21 15:48 郭慕荣 阅读(1365) 评论(0) 推荐(0)
摘要:地址:https://mp.weixin.qq.com/s/LRZzTgflsbIfY3Z8s0qFMA,https://mp.weixin.qq.com/s/Q4Etl5xJZtOhXgy8UK_69g 阅读全文
posted @ 2023-04-21 11:26 郭慕荣 阅读(37) 评论(0) 推荐(0)
摘要:这是一篇不错的文章,系统的总结了redis的知识点和遇到的问题,地址:https://mp.weixin.qq.com/s/BFyQ3eZEaqxMlFN2qiqwCw 阅读全文
posted @ 2022-12-15 16:38 郭慕荣 阅读(92) 评论(0) 推荐(0)
摘要:概述redis 中的大key 主要包括以下几个部分(超过M级别的): 单个简单的key存储的value很大 hash, set,zset,list 中存储过多的元素 一个集群存储了上亿的key 大key有什么影响我们都知道,redis的一个典型特征就是:核心工作线程是单线程。单线程中请求任务的处理是 阅读全文
posted @ 2022-09-07 08:27 郭慕荣 阅读(793) 评论(0) 推荐(0)
摘要:1. 概述由于 Redis 是单线程在处理用户的命令,而 Keys 命令会一次性遍历所有 Key,于是在 命令执行过程中,无法执行其他命令。这就导致如果 Redis 中的 key 比较多,那么 Keys 命令执行时间就会比较长,从而阻塞 Redis。所以很多教程都推荐使用 Scan 命令来代替 Ke 阅读全文
posted @ 2022-06-29 16:51 郭慕荣 阅读(3747) 评论(0) 推荐(0)
摘要:哈希在很多编程语言中都有着很广泛的应用,而在Redis中也是如此,在redis中,哈希类型是指Redis键值对中的值本身又是一个键值对结构,形如value=[{field1,value1},...{fieldN,valueN}],其与Redis字符串对象的区别如下图所示: 一:内部编码 哈希类型的内 阅读全文
posted @ 2022-05-03 17:35 郭慕荣 阅读(705) 评论(0) 推荐(0)
摘要:查看Redis集群信息 guodong@sh-guodong src % redis-cli -p 7001 cluster nodes 5e94ae9b31b2029b2e881e9e302800941e1debcd 127.0.0.1:7004@17004 slave 5500c4ce07bbb 阅读全文
posted @ 2022-04-03 15:54 郭慕荣 阅读(188) 评论(0) 推荐(0)
摘要:一:安装Redis和配置Redis Redis版本是:redis-5.0.14.cluster 如上图所示,一共是三个master(redis1,redis2,redis3),三个从节点(redis1-1,redis3-1,redis2-1,)。六个节点端口号分别为:7001、7002、7003、7 阅读全文
posted @ 2022-04-03 12:22 郭慕荣 阅读(1568) 评论(0) 推荐(2)
摘要:Redis Cluster将所有的数据划分为16384个槽位,它比codis的1024个槽位划分的更为精细。每个节点负责一部分数据。槽位的信息存储于每个节点中,当Redis Cluster的客户端连链接集群时候,也会得到一份集群的槽位配置信息。这样当客户端想要查找某个key时,可以直接定位到目标节点 阅读全文
posted @ 2022-02-20 16:13 郭慕荣 阅读(98) 评论(0) 推荐(0)
摘要:虽然我们经常将 Redis 看做一个纯内存的键值存储系统,但是我们也会用到它的持久化功能,RDB 和 AOF 就是 Redis 为我们提供的两种持久化工具,其中 RDB 就是 Redis 的数据快照,我们在这篇文章想要分析 Redis 为什么在对数据进行快照持久化时会需要使用子进程,而不是将内存中的 阅读全文
posted @ 2021-09-03 15:11 郭慕荣 阅读(5325) 评论(4) 推荐(4)
摘要:1. Redis6.0之前的版本真的是单线程吗?Redis在处理客户端的请求时,包括获取 (socket 读)、解析、执行、内容返回 (socket 写) 等都由一个顺序串行的主线程处理,这就是所谓的“单线程”。但如果严格来讲从Redis4.0之后并不是单线程,除了主线程外,它也有后台线程在处理一些 阅读全文
posted @ 2021-08-13 13:10 郭慕荣 阅读(3027) 评论(1) 推荐(1)
摘要:Redis 底层是双向链表值在键在 值光键亡list的数据结果是是quicklist元素较少的情况下 会使用一块连续的内存存储,这个结构是ziplist也就是压缩链表 它讲所有的元素紧挨着一起存储 分配的是一块连续的内存 当数据量比较多的时候才改成quicklist 因为普通的链表需要的附加指针空间 阅读全文
posted @ 2021-07-09 11:26 郭慕荣 阅读(90) 评论(0) 推荐(0)
摘要:查找所有符合给定模式 pattern 的 key 。KEYS * 匹配数据库中所有 key 。KEYS h?llo 匹配 hello , hallo 和 hxllo 等。KEYS h*llo 匹配 hllo 和 heeeeello 等。KEYS h[ae]llo 匹配 hello 和 hallo , 阅读全文
posted @ 2021-07-05 17:34 郭慕荣 阅读(2372) 评论(0) 推荐(0)
摘要:Redis4.0新增了非常实用的lazy free特性,从根本上解决Big Key(主要指定元素较多集合类型Key)删除的风险。笔者在redis运维中也遇过几次Big Key删除带来可用性和性能故障。本文分为以下几节说明redis lazy free: lazy free的定义 我们为什么需要laz 阅读全文
posted @ 2021-07-05 16:28 郭慕荣 阅读(1123) 评论(0) 推荐(0)
摘要:Redis 大keyRedis使用过程中经常会有各种大key的情况, 比如: 单个简单的key存储的value很大 hash, set,zset,list 中存储过多的元素(以万为单位) 由于redis是单线程运行的,如果一次操作的value很大会对整个redis的响应时间造成负面影响,所以,业务上 阅读全文
posted @ 2021-07-05 15:17 郭慕荣 阅读(10466) 评论(0) 推荐(1)
摘要:热Key问题所谓热key问题就是,突然有几十万的请求去访问redis上的某个特定key。那么,这样会造成流量过于集中,达到物理网卡上限,从而导致这台redis的服务器宕机。那接下来这个key的请求,就会直接怼到你的数据库上,导致你的服务不可用。怎么发现热key 方法一:凭借业务经验,进行预估哪些是热 阅读全文
posted @ 2021-07-01 16:18 郭慕荣 阅读(585) 评论(0) 推荐(0)