Redis中的哨兵模式
什么是哨兵模式?
哨兵模式是一种自动选择老大的模式,即在老大宕机之后,哨兵模式会根据哨兵们的内部投票,自动的重新选出一个新的老大。哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,如果Redis服务器一直没有响应,说明这个Redis服务器可能已经宕机了,从而监控运行的多个Redis实例。
配置哨兵模式的配置文件sentinel.conf
配置哨兵配置文件sentinel.conf,如下
# sentinel monitor 被监控的服务器的名称(可以随意起) host port 1
#后面的这个数字1代表主机挂了,slave从机投票看让谁接替为主机,票数最多的,就会成为主机!
sentinel monitor myredis 127.0.0.1 6379 1
#如果被监控的主机redis服务器有密码的话,还有在sentinel.conf文件中加上认证密码
# sentinel auth-pass 被监控的服务器的名称(可以随意起) password
sentinel auth-pass myredis 123456
启动哨兵模式
哨兵模式的优缺点
优点:
1.哨兵集群,基于主从复制模式,所有的主从配置优点,它全有
2.主从可以切换,故障可以转移,系统的可用性就会更好
3.哨兵模式就是主从模式的升级,手动到自动,更加健壮!
缺点:
1.Redis不好在线扩若的,集群容量一旦到达上限,在线扩容十分麻烦!
2.实现哨兵模式的配置其实是很麻烦的,里面有很多选择。