目录
76.新的主库选择出来后,如何进行故障的转移?
假设根据我们一开始的图:(我们假设:判断主库客观下线了,同时选出sentinel 3是哨兵leader)
故障转移流程如下:
将slave-1脱离原节点(PS:5.0中应该是replicaaof no one),升级主节点。
将从节点slave-2指向新的主节点
通知客户端主节点已更换
将原主节点(oldMaster)变成从节点,指向新的主节点
转移之后
77.Redis事件机制?
Redis中的事件驱动库只关注网络IO,以及定时器。该事件库处理下面两类事件:
文件事件(File event):用于处理Redis服务器和客户端之间的网络IO。
事件事件(time event):Redis服务器中一些操作(比如ServerCron函数)需要在给定的时间点执行,而时间事件就是处理这类定时操作的。
事件驱动库的代码主要是在src/ae.c中实现的,其示意图如下所示。