Redis概述
Redis 是一个开源(BSD 许可)的内存数据结构存储,用作数据库、缓存、消息代理和流引擎。Redis 提供数据结构,例如 字符串、散列、列表、集合、带范围查询的排序集合、位图、超日志、地理空间索引和流。Redis 内置了复制、Lua 脚本、LRU 驱逐、事务和不同级别的磁盘持久性,并通过Redis Sentinel和Redis Cluster自动分区提供高可用性。
Redis特点
- Redis是一个开源的key-value存储系统。
- 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(合集)、zset(sorted set 有序合集)和hash(哈希类型)。
- 这些数据类型都支持 push/pop、add/remove及其交集并集和差集更丰富的操作,而且这些操作都是原子性的。
- 在此基础上,Redis支持各种不同方式的排序。
- 与Memcached一样,为了保证效率,数据都是缓存在内存中。
- Redis会周期性的把更新的数据写入磁盘或者把修改操作写入最佳到记录文件。
- 可实现master-slave主从同步
应用场景
- 高频次,热门访问的数据,降低数据库IO
- 分布式架构,做session共享
- 消息队列
- 计数器、秒杀
- 发布订阅消息系统
- 时效性的数据、比如消息验证码