Just play around
如何保证缓存一致性 如何保证缓存一致性
1.如何保证缓存一致性?使用缓存代表不需要强一致性,只需要最终一致性 1.1数据库和缓存数据强一致场景: 同步双写:更新 DB 时同样更新 cache,保证在一个事务中,通过加锁来保证更新 cache 时不存在线程安全问题 延迟双删:先淘
2024-12-29
什么是缓存击穿、缓存穿透、缓存雪崩 什么是缓存击穿、缓存穿透、缓存雪崩
1.缓存击穿缓存击穿是指某个热点数据key在缓存中失效,大量的请求同时涌向后台数据库,对数据库造成很大的压力。 解决方案: 逻辑过期:在缓存数据中存储逻辑过期时间(如字段expireTime),实际缓存不设物理过期。当数据过期时,异步线程
2024-12-25
'Redis为什么那么快?' 'Redis为什么那么快?'
“Redis为什么快?” 不能简单的回答“因为它是纯内存操作!”,纯内存操作确实是Redis快的核心之一,但这并不是全部。 1. 纯内存操作:速度的基石Redis将所有数据存储在内存中,避免了传统数据库的磁盘I/O瓶颈。内存的读写
2024-09-24
Redis高频面试题 Redis高频面试题
1.说一说Redis的持久化机制Redis主要是RDB持久化、AOF持久化这两种持久化方式。 RDBRDB(Redis Database)是Redis默认采用的持久化方式,它以快照的形式将内存数据持久化到硬盘中。RDB会创建一个经过压缩的二
2024-03-13
Redis的对象系统 Redis的对象系统
1.概述Redis的对象系统包括string、hash、list、set、zset这五种类型的对象,每种对象都用到了至少一种我们前面介绍的数据结构。 使用对象的好处: Redis可以在执行命令前,可以根据对象的类型来判断一个对象是否可以执
2023-12-12
Redis常见数据结构和数据类型 Redis常见数据结构和数据类型
字符串SDSRedis 构建了简单动态字符串(SDS)的数据类型,作为 Redis 的默认字符串表示,包含字符串的键值对在底层都是由 SDS 实现 struct sdshdr { // 记录buf数组中已使用字节的数量,等
2023-12-07