页缓存 是什么
操作系统自动管理的、用于缓存磁盘文件的一块内存。 核心作用 把磁盘数据缓存在内存里 读:先读内存,没有再读磁盘 写:先写内存,后台异步刷盘
阅读全文 →操作系统自动管理的、用于缓存磁盘文件的一块内存。 核心作用 把磁盘数据缓存在内存里 读:先读内存,没有再读磁盘 写:先写内存,后台异步刷盘
阅读全文 →Consumer 也是顺序读: 按 offset 从前往后读 操作系统预读超级爽 大量命中页缓存 几乎等于读内存。
阅读全文 →Kafka 的存储结构天生就是为顺序写设计的: Topic → 分区(Partition) 每个分区就是一个只追加的日志文件 消息永远只往文件末尾写 不修改、不
阅读全文 →工作机制:Kafka 保证一个 Partition 只能被同一个 Consumer Group 中的一个 Consumer 消费。这是实现负载均衡的基础。
阅读全文 →禁止直接 DEL: 直接 DEL big key 会阻塞 Redis 线程直到删除完成。 正确做法:使用 渐进式删除。
阅读全文 →大 Key (BigKey): 定义:Value 过大(如 String > 10KB, Hash/List > 10000 元素)。
阅读全文 →Redis Cluster 不使用一致性哈希,而是引入了 16384 个哈希槽 (Slots)。 路由规则:slot = CRC16(key) % 16384。
阅读全文 →缓存穿透 (Penetration) 现象:查询根本不存在的数据,缓存没命中,请求直打数据库,数据库也没数据。恶意攻击可打挂 DB。
阅读全文 →基本命令:SET key value NX EX seconds (NX=不存在才设,EX=过期时间)。必须保证这两个动作是原子的。
阅读全文 →没有完美的方案,只有最适合业务的权衡: 先删缓存,再更新数据库:绝对不行,高并发下会读到旧数据(脏数据)。 先更新数据库,
阅读全文 →