1.什么是Redis?
- Remote Dictionary Server(远程字典服务器)
- Redis是一个'开源的'使用'C语言'编写的数据库
- Redis和MongoDB一样是NoSQL类型的数据库 不同的是MongoDB存储的是文档, 而Redis存储的是键值对(Key-Value)
2.Redis特点
- 速度快
- Redis默认情况下将数据存储在内存中
- 读取速度能达到10万次/s左右, 写入能到到8万次/秒左右
- 支持数据的持久化
- Redis默认情况下将数据存储在内存中
- 但是也可以将内存中的数据保存到磁盘中
- 支持多种数据结构
- Redis是通过key-value形式存储数据的
- value不仅支持常见的字符串类型,整型以外
- 同时还提供了list, set ,zset, hash等数据结构的存储
- 定制性强
- Redis虽然强大, 但是它是开源免费的
- Redis第一个版本代码在23000行左右
- Redis当前版本代码在50000行左右
- 支持分布式
- 和MongoDB一样, Redis是支持主从复制, 支持分布式存储的
- ... ...
3.Redis场景应用场景
- 缓存系统
- 由于Redis是将数据存储在内存中的, 所以我们可以使用Redis来实现内存缓存
- 对于经常会被查询,但是不经常被修改或者删除的数据, 存储到Redis中
- 排行榜
- 由于Redis支持集合(Set)和有序集合(Sorted Set) 所以是的我们在实现排行榜的时候变的非常简单
- 计数器
- 由于Redis提供了incr/decr指令, 使得我们在实现计数器时非常简单
- 转发数/评论数/播放数/访问数/... ...
- 存储社交关系
- 由于Redis支持存储集合类型数据, 由于社交关系不会经常发生改变 所以很多社交网站会使用Redis来存储社交关系
- 消息队列系统
- Redis天生支持发布订阅模式, 所以天生就是实现消息队列系统的材料
- ... ... -->