排序
Redis内存满了会发生什么,以及内存淘汰策略有哪些?
Redis内存满了,会发生什么? 在 Redis 的运行内存达到了某个阀值,就会触发内存淘汰机制,这个阀值就是我们设置的最大运行内存,此值在 Redis 的配置文件中可以找到,配置项为 maxmemory。 red...
Redis持久化和主从模式时,对过期键会如何处理?
Redis 持久化文件有两种格式:RDB(Redis Database)和 AOF(Append Only File),下面我们分别来看过期键在这两种格式中的呈现状态。 redis RDB 文件分为两个阶段,RDB 文件生成阶段和加载阶段...
Redis使用的过期删除策略是什么,有什么优缺点?
Redis 是可以对 key 设置过期时间的,因此需要有相应的机制将已过期的键值对删除,而做这个工作的就是过期键值删除策略。 每当我们对一个 key 设置了过期时间时,Redis 会把该 key 带上过期时间...
什么是脑裂,集群脑裂导致数据丢失怎么办?
什么是脑裂 先来理解集群的脑裂现象,这就好比一个人有两个大脑,那么到底受谁控制呢? 那么在 Redis 中,集群脑裂产生数据丢失的现象是怎样的呢? 集群脑裂 在 Redis 主从架构中,部署方式一般...
为什么会有混合持久化,其有哪些优缺点?
RDB 优点是数据恢复速度快,但是快照的频率不好把握。频率太低,丢失的数据就会比较多,频率太高,就会影响性能。 AOF 优点是丢失数据少,但是数据恢复不快。 为了集成了两者的优点, Redis 4.0...
RDB快照是如何实现的呢?
因为 AOF 日志记录的是操作命令,不是实际的数据,所以用 AOF 方法做故障恢复时,需要全量把日志都执行一遍,一旦 AOF 日志非常多,势必会造成 Redis 的恢复操作缓慢。 为了解决这个问题,Redis...
AOF日志是如何实现的?
Redis在执行完一条写操作命令后,就会把该命令以追加的方式写入到一个文件里,然后 Redis 重启时,会读取该文件记录的命令,然后逐一执行命令的方式来进行数据恢复。 我这里以「set name xiaoli...
Redis如何实现数据不丢失?
Redis的读写操作都是在内存中,所以 Redis 性能才会高,但是当 Redis 重启后,内存中的数据就会丢失,那为了保证内存中的数据不会丢失,Redis 实现了数据持久化的机制,这个机制会把数据存储到...