
redis
文章平均质量分 76
。。。
{⌐■_■}
Before 22:30
展开
-
【Redis】热点key问题,的原因和处理,一致性哈希,删除大key的方法
这保证了在节点动态增减的情况下,只需迁移小部分数据,极大提升了系统的可扩展性与稳定性。一致性哈希是一种用于。原创 2025-05-28 19:54:55 · 848 阅读 · 0 评论 -
【Redis】过期键删除策略,LRU和LFU在redis中的实现,缓存与数据库双写一致性问题,go案例
Redis 的过期键清除策略采用了惰性删除 + 定期删除的组合策略,在保证较低 CPU 开销的同时,尽可能释放内存空间。惰性删除是只在访问key的时候检查是否过期;定期删除定时进行部分key的过期检查;Redis 放弃了定时删除,是因为对每个key单独计时过期删除,会大大增加cpu负担LRU,全称,即「最近最少使用」策略,用于在内存满时淘汰最久未被访问的键。LFU,全称,即「最不常访问」策略。用于淘汰访问次数最少的键,更能避免短期热点带来的缓存污染。场景推荐方案优点需注意问题与优化点。原创 2025-05-27 19:00:38 · 1147 阅读 · 0 评论 -
【redis】redis内部逻辑执行不是单线程吗,为啥还要分布式锁,go的redis分布式锁案例
Redis单线程保证了单个实例内的命令原子性,但无法解决多客户端(多服务节点)对共享资源的竞争问题。分布式锁的本质是通过Redis的原子操作(如SET NX)实现跨服务的互斥控制,是解决分布式系统并发问题的核心方案之一。在Go语言中,合理实现分布式锁需考虑原子性、安全性、过期策略等细节,企业级应用中常结合业务场景选择合适的锁方案(如Redlock、Redisson等)。原创 2025-05-25 19:44:24 · 521 阅读 · 0 评论 -
【redis】redis常见数据结构及其底层,redis单线程读写效率高于多线程的理解,
数据类型底层结构说明String根据长度和内容选择优化方式:int 表示整数,embstr 表示小字符串,raw 是通用 SDSListziplist(旧) /quicklistRedis 3.2+ 默认用 quicklist(多个 ziplist + 双向链表)Set小量整数用 intset,其他情况用 hashtableZSet哈希表查找,跳表排序;两个结构同时维护Hash字段少且短用 ziplist,否则用 hashtable。原创 2025-05-15 19:06:14 · 725 阅读 · 0 评论 -
【Redis】简单介绍go中用于操作redis的库redigo
redis.Args{}.AddFlat(user): 将结构体展平为键值对参数,便于存储。使用 redis.ScanStruct 将键值对映射到结构体 User。Do(“HMSET”, …): 执行 Redis 命令。Dial: 用于创建 Redis 连接,支持密码认证。通过 redis.Values 获取键值对。返回 RedisClient 实例。使用 DEL 删除指定用户的哈希键。MaxIdle: 最大空闲连接数。MaxActive: 最大连接数。键格式:user:。返回对应的用户信息。原创 2024-11-18 21:06:01 · 358 阅读 · 0 评论 -
【Redis】Redis Streams命令基础以及go语言应用案例
案例 3:消费者组,使用 Redis Streams 消费者组来处理任务,多个消费者分摊消息。Streams就像视频平台:内容会保存下来,你可以。订阅/发布机制就像收音机广播:你只能。正在播放的内容,错过了就再也听不到。案例 1:简单生产者和消费者。,也可以从最新一集开始看。中添加信息,创建、管理。案例 2:实时消息处理。原创 2024-11-18 20:20:24 · 892 阅读 · 0 评论 -
【基础环境搭建】Redis在虚拟机搭建与连接goland
xmind思维导图自取原创 2024-11-17 12:35:03 · 94 阅读 · 0 评论