【Redis源码】RDB持久化源码实现

RDB快照有两种触发方式,其一为通过配置参数,例如在配置文件中写入如下配置: save 60 1000 则在60秒内如果有1000个key发生变化,就会触发一次RDB快照的执行。 其二是通过在客户端执行bgsave命令显式触发一次RDB快照的执行。

【Redis源码】Redis 6 ACL源码详解

本文主要是讲解Redis 6的ACL的实现原理。基本使用详见:Redis 6.0新特性——ACLs,以及Redis启动过程分析。

Redis 6.0新特性——ACLs

Redis ACL是Access Control List(访问控制列表)的缩写,该功能允许根据可以执行的命令和可以访问的键来限制某些连接。它的工作方式是,在连接之后,要求客户端进行身份验证,以提供用户名和有效密码:如果身份验证阶段成功,则连接与给定用户关 ......

【Redis源码】setbit命令

setbit命令对key所存储的字符串值,设置指定偏移量上的比特位。 格式: setbit key offset value 返回值: 返回指定偏移量原来存储的位。

【Redis源码】mget命令

通过get命令只能获取单个key的值,如果想获取多个key的值,可以通过mget命令来实现。mget返回所有指定key的值。 格式: mget key [key …]

【Redis源码】strlen命令

strlen命令从数据库中获取到value,返回value字符串的长度。 格式: strlen key

当Redis数据磁盘坏掉之后会发生什么

当Redis cluster集群数据所在磁盘的RAID卡坏掉了之后会发生什么?集群会不会进行故障迁移,以及怎么快速恢复。

【Redis源码】setrange命令

setrange命令主要用于设置value的部分子串,设置时将值从偏移量offset开始覆盖成value值。如果偏移值大于原值的长度,则偏移量之前的字符串由“\x00”填充。 命令格式: setrange key offset value

【Redis源码】append命令

数据库已经有了key,它的值为value。当我们发现value值需要追加字符串却又不想直接用set命令覆盖原值时,可以用append命令来实现。 命令格式: append key value 说明: 将value追加到原值的末尾,如果key不存在,此命 ......

【Redis源码】mset命令

通过set、setex等命令只能设置单个字符串到数据库,当我们想一次性设置多个字符串时,可以使用mset或msetnx命令来解决。 格式: mset key value [key value ...] msetnx key value [key value ......