「这是我参与2022首次更文挑战的第17天,活动详情查看:2022首次更文挑战」
Redis主从复制(哨兵模式)
说明:
-
相比较一主二从手动配置优点在于当主节点发生意外下线时,不需要手动进行主节点的设置,而由内部进行新主节点的设置。进而提高Redis服务器的可用性!
-
哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。
此处哨兵的任务分为:
-
不断查看Redis服务器的运行状态。
-
当检测到主节点下线时,设置从节点为主节点继续工作;并且将此新主节点的信息,通过发布订阅的模式告诉其他从节点,修改其他从节点的配置信息,以达到之后正常工作的目的。
注意项:
在现实中往往不可能只配置一个哨兵用于检测,因为哨兵本身也可能翻发生故障,导致整体工作异常。所以要搭建多个哨兵,让其对所有从节点和主节点,还有其他哨兵进行健康检测,以此提高整个系统的高可用性。
如图:
假设主服务器宕机,哨兵1先检测到这个结果,系统并不会马上进行failover过程,仅仅是哨兵1主观的认为主服务器不可用,这个现象称为主观下线。当后面的哨兵也检测到主服务器不可用,并且数量达到一定值时,那么哨兵之间就会进行一次投票,投票的结果由一个哨兵发起,进行failover[故障转移]操作。切换成功后,就会通过发布订阅模式,让各个哨兵把自己监控的从服务器实现切换主机,这个过程称为客观下线。
哨兵模式
优点:
1、哨兵集群,基于主从复制模式,所有的主从配置优点,他都有!
2、主从可以切换,故障可以转移,系统的可用性就会更好!
3、哨兵模式就是主从模式的升级,手动到自动,更加健壮!
缺点:
1、Redis不好在线扩容的,集群容量一旦到达上限,在线扩容就十分麻烦!
2、实现哨兵模式的配置其实很麻烦的,里面有很多的选择!
哨兵模式中的主节点选举机制优质帖子:blog.csdn.net/LiaoHongHB/…
明天继续加油!