redis是使用简单、性能强大的非关系型数据库。
下面简单介绍他的几个特性。
后续会进行关于redis支持的数据结构、redis使用场景案例等的分享。
单线程
- redis的一大特色,使得Redis服务端处理模型变得简单,而且也使得客户端开发变得简单
速度快
- Redis执行命令的速度非常快,官方给出的数字是读写性 能可以达到10万/秒
- Redis的所有数据都是存放在内存中的
- Redis是用C语言实现的,一般来说C语言实现的程序“距离”操作系统更 近,执行速度相对会更快
- Redis使用了单线程架构,预防了多线程可能产生的竞争问题
丰富的功能
- 提供5种数据结构
- 提供了键过期功能,可以用来实现缓存
- 提供了发布订阅功能,可以用来实现消息系统
- 支持Lua脚本功能,可以利用Lua创造出新的Redis命令
- 提供了简单的事务功能,能在一定程度上保证事务特性
- 提供了流水线(Pipeline)功能,这样客户端能将一批命令一次性传到 Redis,减少了网络的开销
持久化
- Redis提供了两种持久化方式:RDB和 AOF,即可以用两种策略将内存的数据保存到硬盘中
主从复制
- Redis提供了复制功能,实现了多个相同数据的Redis副本(如图1-2所 示),复制功能是分布式Redis的基础