改进蚁群算法的Storm任务调度优化

作者:王林; 王晶
来源:计算机测量与控制, 2019, 27(08): 236-240.
DOI:10.16526/j.cnki.11-4762/tp.2019.08.049

摘要

Apache Storm默认任务调度机制是采用Round-Robin (轮询)的方法对各个节点平均分配任务,由于默认调度无法获取集群整体的运行状态,导致节点间资源分配不合理;针对该问题,利用蚁群算法在NP-hard问题上的优势结合Storm本身拓扑特点,提出了改进蚁群算法在Storm任务调度中的优化方案;通过大量实验找到了启发因子α与β的最佳取值,并测得改进后蚁群算法在Storm任务调度中的最佳迭代次数;引入Sigmoid函数改进了挥发因子ρ,使其可以随着程序运行自适应调节;从而降低了各个节点CPU的负载,同时提高了各节点之间负载均衡,加快了任务调度效率;实验结果表明改进后的蚁群算法和Storm默认的轮询调度算法在平均CPU负载上降低了26%,同时CPU使用标准差降低了3.5%,在算法效率上比Storm默认的轮询调度算法提高了21.6%。

全文