1.什么是Redis?
Redis是完全开源免费的,遵守BSD协议,是一个高性能的键值数据库。是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器。
2.redis的数据类型
字符串类型 (string类型):命令不区分大小写,键区分大小写的
散列类型(hash类型):数据存储结构 key key value
列表类型(list类型):有顺序 可重复, 数据存储结构 key value(多个值)
集合类型(set类型):元素无顺序,不能重复 数据存储结构 key value(多个值)
有序集合类型(zset类型):有顺序,不能重复 数据存储结构 key value(多个值)
3.Redis的主从复制
主从复制。一台master主机可以拥有多台slave从机。而一台slave从机又可以拥有多个slave从机。如此下去,形成强大的多级服务器集群架构(高扩展)。可以避免Redis单点故障,实现恢复效果(高可用)。读写分离的架构,满足读多写少的并发应用场景。
当数据量变得庞大的时候,读写分离还是很有必要的。同时避免一个redis服务宕机,导致应用宕机的情况,我们启用sentinel(哨兵)服务,实现主从切换的功能。
4.Redis 的持久化方案
Redis有两种数据保存的方式,
第一种:是rdb形式,快照的形式,redis默认开启的也是这种方式,这种保存方式是每隔一段时间就会保存一下key值,性能上会高一些。
第二种:是aof方式,这种方式是每隔一秒钟就会保存一次数据,但是这种保存数据的方式性能上会差一些,不推荐使用这种。
RDB,AOF俩种,
RDB是一种快照的方式来存储的,这也是redis的默认的持久化方式,每隔一段对数据进行一次存储,默认是15S。
AOF是即时性的持久化方式,这种方式对数据的保存完整性比较高,但是性能比较差。
而RDB存在的问题主要是服务器宕机或者断电,就会造成数据丢失,我们可以适当的把存储间隔缩短一些