FastDFS之Tracker-Leader和Trunk-Server的选择
Tracker-Leader的选择
Tracker-Leader的概述
在 FastDFS 中可以配置多个 tracker,每个 tracker 是对等的,但是在运行过程中针对某些操作会选择其中一个 tracker 作为 Leader,由 Leader 执行这些特殊的操作。
既然 Tracker 是对等的,为什么还需要选举 Leader,选出来的 Leader 能干什么?这个问题,余庆(fishhappy100)在 chinaunix bbs 中做了回答,他是如此解释的:
tracker server之间是对等的。客户端可以访问任意一台tracker server。
引入tracker leader是为了解决如下问题:
新加入一台storage server时,由leader指定向其同步的源storage server
使用了合并存储特性时,leader为每个group选举和维护唯一的一个trunk server
以上分配如果不由leader来完成的话,可能会出现混乱情况,尤其是第2条。