我们是不耐烦的:(几乎)任意负载函数的地理分布负载均衡算法
We Are Impatient: Algorithms for Geographically Distributed Load Balancing with (Almost) Arbitrary Load Functions
摘要:
在地理分布的系统中,通信延迟是不可忽略的。因此,请求的感知处理时间由将请求路由到服务器所需的时间和实际处理时间组成。一旦请求到达目标服务器,处理时间取决于该服务器的总负载;这种依赖性由load函数描述。我们考虑一类广泛的负载函数,我们只需要他们是凸的和二次可微的。特别是我们的模型可以应用到异构系统中,每个服务器有一个不同的负载函数。这种方法使我们不仅可以概括排队理论和批量请求的结果,而且还可以使用在压力测试下的系统中测量的派生负载函数。请求到服务器的最优分配是通信平衡的,即对于任何一对非完美平衡的服务器,将单个请求从过载服务器移动到欠载服务器所导致的处理时间的减少小于额外的通信延迟。我们提出了一个集中式和分散式的最佳负载均衡算法。我们证明了算法收敛的界。据我们所知,这些界限是不知道的,即使是以前研究的特殊情况下(排队理论和批量的请求)。这两种算法都是任意时间算法。在分散式算法中,每个服务器与随机选择的对等体平衡负载。这种算法对故障具有很强的鲁棒性。我们证明了分散算法执行局部最优步骤。我们的工作扩展了目前已知的结果,考虑了广泛的一类负载函数,并建立理论界的算法的收敛性。这些结果是适用于服务器的负载下的特性不能用一个标准的数学模型来描述。
英文摘要:
In geographically-distributed systems, communication latencies are non-negligible. The perceived processing time of a request is thus composed of the time needed to route the request to the server and the true processing time. Once a request reaches a target server, the processing time depends on the total load of that server; this dependency is described by a load function. We consider a broad class of load functions; we just require that they are convex and two times differentiable. In particular our model can be applied to heterogeneous systems in which every server has a different load function. This approach allows us not only to generalize results for queuing theory and for batches of requests, but also to use empirically-derived load functions, measured in a system under stress-testing. The optimal assignment of requests to servers is communication-balanced, i.e. for any pair of non perfectly-balanced servers, the reduction of processing time resulting from moving a single request from the overloaded to underloaded server is smaller than the additional communication latency. We present a centralized and a decentralized algorithm for optimal load balancing. We prove bounds on the algorithms' convergence. To the best of our knowledge these bounds were not known even for the special cases studied previously (queuing theory and batches of requests). Both algorithms are any-time algorithms. In the decentralized algorithm, each server balances the load with a randomly chosen peer. Such algorithm is very robust to failures. We prove that the decentralized algorithm performs locally-optimal steps. Our work extends the currently known results by considering a broad class of load functions and by establishing theoretical bounds on the algorithms' convergence. These results are applicable for servers whose characteristics under load cannot be described by a standard mathematical models.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。