Redis(Remote Dictionary Server)是一个开源的、基于内存的高性能键值存储系统。它支持多种数据结构,如字符串、哈希、列表、集合、有序集合等。Redis通常被用作缓存、消息队列、分布式锁等场景。
Redis支持多种数据结构,每种数据结构都有其特定的应用场景。
SET
, GET
, INCR
, DECR
, APPEND
等。HSET
, HGET
, HMSET
, HMGET
, HDEL
等。LPUSH
, RPUSH
, LPOP
, RPOP
, LRANGE
等。SADD
, SREM
, SMEMBERS
, SINTER
, SUNION
等。ZADD
, ZREM
, ZRANGE
, ZSCORE
, ZRANK
等。Redis提供了两种持久化机制:RDB和AOF。
SAVE
或BGSAVE
命令,或配置自动保存策略。appendonly yes
,并设置appendfsync
策略(always、everysec、no)。Redis的过期策略决定了如何处理过期的键。
当Redis内存不足时,会根据配置的内存淘汰策略删除一些键。
Redis的事务通过MULTI
、EXEC
、DISCARD
、WATCH
等命令实现。
Redis的发布订阅模式允许客户端订阅频道并接收消息。
PUBLISH channel message
SUBSCRIBE channel [channel ...]
UNSUBSCRIBE [channel [channel ...]]
PSUBSCRIBE pattern [pattern ...]
PUNSUBSCRIBE [pattern [pattern ...]]
Redis集群通过分片(Sharding)实现数据的分布式存储。
Redis的主从复制通过复制主节点的数据到从节点实现数据备份和读写分离。
SYNC
命令,主节点生成RDB文件并发送给从节点,从节点加载RDB文件并同步增量数据。Redis的哨兵模式通过监控主从节点的状态实现自动故障转移。
MSET
、MGET
等命令批量操作数据。MULTI
、EXEC
、DISCARD
、WATCH
等命令实现。不支持回滚,无法保证隔离性。PUBLISH
、SUBSCRIBE
、UNSUBSCRIBE
、PSUBSCRIBE
、PUNSUBSCRIBE
等命令实现。客户端可以订阅频道或模式,接收发布的消息。SYNC
命令,主节点生成RDB文件并发送给从节点,从节点加载RDB文件并同步增量数据。支持部分重同步和无磁盘复制。以上是关于Redis的相关知识点及面试点的详细介绍,希望对大家有所帮助。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。