Redis主要包括 访问框架、操作模块、索引、存储、高可用集群支撑模块 和 高可扩展集群支撑模块等6个模块。其中:
- 访问框架:Redis主要通过网络框架进行访问
- 操作模块:针对不同的数据类型,Redis提供了 set, get, del, lpush, lpop, sadd, srem, hget, hset, put, get, scan, delete 等多种不同的操作接口
- 索引模块:Redis采用了全局 hash 表来作为索引,提供了基于内存的高性能随机访问特性,时间复杂度 O(1);value类型之后具体讨论
- 存储模块:通过AOF 和 RDB 提供持久化支持
- 高可用集群支撑模块:主从复制,哨兵机制
- 高可扩展集群支撑模块:数据分片(Redis Cluster)