With the rapid increase in the size and volume of cloud services and data centers, architectures with multiple job dispatchers are quickly becoming the norm. Load balancing is a key element of such systems. Nevertheless, current solutions to load balancing in such systems admit a paradoxical behavior in which more accurate information regarding server queue lengths degrades performance due to herding and detrimental incast effects. Indeed, both in theory and in practice, there is a common doubt regarding the value of information in the context of multi-dispatcher load balancing. As a result, both researchers and system designers resort to more straightforward solutions, such as the power-of-two-choices to avoid worst-case scenarios, potentially sacrificing overall resource utilization and system performance. A principal focus of our investigation concerns the value of information about queue lengths in the multi-dispatcher setting. We argue that, at its core, load balancing with multiple dispatchers is a distributed computing task. In that light, we propose a new job dispatching approach, called Tidal Water Filling, which addresses the distributed nature of the system. Specifically, by incorporating the existence of other dispatchers into the decision-making process, our protocols outperform previous solutions in many scenarios. In particular, when the dispatchers have complete and accurate information regarding the server queues, our policies significantly outperform all existing solutions.
翻译:随着云层服务和数据中心的大小和数量迅速增加,拥有多个任务发送器的架构正在迅速成为规范。负载平衡是这类系统的一个关键要素。然而,目前这种系统中的负载平衡解决方案却承认一种矛盾行为,即关于服务器队列长度的更准确信息会由于放牧效应和有害轮廓效应而降低性能。事实上,无论是在理论上还是在实践中,在多发送器负荷平衡的背景下,信息的价值都存在共同的疑问。因此,研究人员和系统设计师都采用更直接的解决办法,如避免最坏情况情景的双选权,可能牺牲总体资源利用和系统性能。我们调查的主要焦点是多发送器设置中排队列长度信息的价值。我们认为,从本质上看,与多个发送器之间的负载平衡是一种分散的计算任务。据此,我们建议采用新的工作发送方法,称为“潮水填充”,处理系统的分布性质。具体地说,通过将其他调度器的存在纳入决策过程,从而可能牺牲整个资源利用和系统性业绩。我们调查的主要重点调查重点是多发盘设置中队列长度的信息的价值。我们认为,从核心上看,与多发货机室之间的所有解决方案都超越了我们以前的解决方案。