Redis几种常见实用方式包括:
- 单机版
- Redis主从
- Redis Sentinel(哨兵)
- Redis Cluster(集群)
使用场景 :
-
单机版:很少使用1、内存容量有限2、处理能力有限3、无法高可用
-
主从模式:master节点挂掉后,需要手动指定新的master,可用性不高
-
哨兵模式:master节点挂掉后,哨兵进程会主动选举新的master,可用性高,但是每个节点存储的数据是一样的,浪费内存空间。数据量不是很多,集群规模不是很大,需要自动容错容灾的时候使用。
-
Redis cluster:主要是针对海量数据+高并发+高可用的场景,如果是海量数据,如果你的数据量很大, 那么建议就用Redis cluster,所有主节点的容量总和就是Redis cluster可缓存的数据容量。
主从复制存在不能自动故障转移、达不到高可用的问题。哨兵模式解决了这些问题。通过哨兵机制可以自动切换主从节点。
哨兵模式解决了主从复制不能自动故障转移、达不到高可用的问题,但还是存在主节点的写能力、容量 受限于单机配置的问题。而cluster模式实现了Redis的分布式存储,每个节点存储不同的内容,解决主 节点的写能力、容量受限于单机配置的问题。