针对Zoo Keeper机制难以满足内存云(RAMCloud)低延迟、快恢复的问题,提出了一种面向内存云的协调器选举策略(CES)。首先根据内存云网络环境与协调器自身因素将协调器性能指标分为个体指标与协调器间指标两类并分别建立模型;然后将内存云的运行分为正常运行期与数据恢复期两阶段并分别建立适应度函数,再按时间比合并为总适应度函数;最后在备选协调器(RBC)的适应度值的基础上提出一个具备稳定择优性与随机性的新算子,CES首先通过筛选来排除性能较差的个体,缩小选择范围后再在理想协调器的集合中采用轮盘赌方法选择最终的个体。实验结果表明,在NS2仿真环境下CES选择的个体相比其他备选协调器数据处理延迟降低了19.35%;在搭建的内存云环境中,与Zoo Keeper机制相比,CES的选择结果在快速恢复中时间减少了10.02%。在内存云的实际应用中,CES在处理单点失效问题上能有效选择性能更优的协调器,确保了低延迟、快恢复的要求。
Focusing on the issue that ZooKeeper cannot meet the requirement of low latency and quick recovery of RAMCloud, a Coordinator Election Strategy (CES) based on RAMCloud was proposed. First of all, according to the network environment of RAMCloud and factors of the coordinator itself, the performance indexes of coordinator were divided into two categories including individual indexes and coordinator indexes, and models for them were built separately. Next, the operation of RAMCloud was divided into error-free running period and data recovery period, their fitness functions were built separately, and then the two fitness functions were merged into a total fitness function according to time ratio. Lastly, on the basis of fitness value of RAMCloud Backup Coordinator (RBC), a new operator was proposed with randomness and the capacity of selecting an ideal target: CES would firstly eliminate poor-performing RBC by screening, as the range of choice was narrowed, CES would select the ultimate RBC from the collection of ideal coordinators by means of roulette. The experimental results showed that compared with other RBCs in the NS2 simulation environment, the coordinator selected by CES decreased latency by 19.35%; compared with ZooKeeper in the RAMCloud environment, the coordinator selected by CES reduced recovery time by 10.02%. In practical application of RAMCloud, the proposed CES can choose the coordinator with better performance, ensure the demand of low latency and quick recovery.