
Redis 简单介绍
1、Redis 是什么
Redis 是一种基于键值对的 NoSQL 数据库,与很多键值对数据库不同, redis 中的值可以有 string, hash , list , set , zset , geo 等多种数据结构和算法组成。
因为 Redis 会将所有的数据都放在内存中,所以它的读写性能非常惊人. 不仅如此, Redis 还可以将内存中的数据利用快照和日志的形式保存到硬盘上。 Redis 还提供了键过期,发布订阅,事务,流水线等附加功能.
2、Redis 重要特性
2.1 速度快
Redis 所有的数据都存放在内存中
Redis 使用 C 语言实现
Redis 使用单线程架构
2.2 基于键值对的数据结构服务器
5种数据结构:字符串,哈希,列表,集合,有序集合
2.3 丰富的功能
提供了键过期功能,可以实现缓存 提供了发布订阅功能,可以实现消息系统
提供了 pipeline 功能,客户端可以将一批命令一次性传到 Redis,减少了网络开销
2.4 简单稳定
源码很少,3.0 版本以后 5 万行左右. 使用单线程模型法
Redis 服务端处理模型变得简单. 不依赖操作系统的中的类库
2.5 客户端语言多
java,PHP,python,C,C++,Nodejs 等
2.6 持久化
RDB 和 AOF
2.7 主从复制
2.8 高可用和分布式
哨兵
集群
3、Redis 应用场景
3.1 缓存-键过期时间
缓存 session 会话
缓存用户信息,找不到再去 mysql 查,查到然后回写到 redis
3.2 排行榜-列表&有序集合
热度排名排行榜
发布时间排行榜
3.3 计数器应用-天然支持计数器
帖子浏览数
商品浏览数
视频播放次数
3.4 社交网络-集合
踩/赞,粉丝,共同好友/喜好,推送,打标签
3.5 消息队列系统-发布订阅
配合 elk 实现日志收集
#### 今天你学习了吗?若有疑问,请留言、私信或加QQ群:647033350,大家一起进步吧!