一.介绍
首先介绍一下单机、主从、哨兵、集群是啥。
1.单机
顾名思义就是单台数据库,当服务挂掉时,Redis可以通过持久化保存数据,保证了数据重启也能恢复数据。但某天你的硬盘出现故障,所有的数据全部丢失,这就愁人了,于是主从模式出现了。
2.主从
如果每次操作数据时,我们自动将数据同步到另一台Redis服务上,这样是不是就避免了单台服务故障导致的数据损失呢!于是主从模式出现,主数据库可以进行读写操作,当写操作导致数据变化时会自动将数据同步给从数据库,保留了数据的火种。
这样数据同步到了从服务,主服务挂了,开发者可以选择一个从服务升为主服务,保证系统正常运行。但人又不是24小时能实时监管服务啊,于是哨兵模式出现了。
3.哨兵
哨兵是redis2.8提出的工具,用来实现自动化系统监控和故障恢复功能。哨兵的作用就是监控Redis的运行状况,出现故障时,自从从数据库中选举一个升为主服务。哨兵至少要部署3台,符合半数原则,如5台 或7台。超过一半(不包含一半)存活的时候,才能够选举出leader,才能进行主从的切换功能。
4.集群
即使使用哨兵,redis每个实例