新的主节点是怎样被挑选出来的?

新的主节点是怎样被挑选出来的?
过滤掉不符合以下条件的节点:
- 被判定为 "不健康"(主观下线或断线)的节点。
- 在过去的5秒内没有回复过Sentinel节点的ping请求。
- 与主节点失联的时间超过down-after-milliseconds乘以10秒。
- 从已经连接的从节点列表中选择具有最高从节点优先级(slave-priority)的节点,如果存在则返回该节点,否则继续到下一步。
- 从已经连接的从节点列表中选择具有最大复制偏移量的节点,表示该节点的复制最为完整,如果存在则返回该节点,否则继续到下一步。
- 从已经连接的从节点列表中选择具有最小runid的节点,runid是一个唯一标识符,表示节点的运行ID,如果存在则返回该节点。