1. 内存型数据库
Redis是内存型数据库,大多数操作都是基于内存的。省去了访问硬盘的步骤
2. 数据结构
2.1 string
string 类型采用SDS数据结构来存储,通过空间预分配和惰性空间释放,减少内存申请次数,详细文章介绍
2.2 zset
zset 采用的跳跃表可以通过不同的层来达到加速访问节点的效果. 详细文章介绍
2.3 dict
dcit 类型采用渐进式 rehash 技术来对字典数据进行内存的动态扩展和收缩,详细文章介绍
3. 单线程
Redis的主体模式还是单线程的, 采用单线程的好处就是不需考虑上下文切换的开销和锁的问题。
4.IO多路复用
Redis是IO多路复用模型,即一个线程来处理多个TCP连接,这样的好处就是,即使客户端并发请求,也得排队处理,一定程度上解决了多线程模型带的并发问题