摘要
:
We study the problem of assigning users to servers with an emphasis on the distributed algorithmic solutions. Typical online social network applications, such as Facebook and Twitter, are built on top of an infrastructure of serve...
展开
We study the problem of assigning users to servers with an emphasis on the distributed algorithmic solutions. Typical online social network applications, such as Facebook and Twitter, are built on top of an infrastructure of servers that provides the services on behalf of the users. For a given communication pattern among users, the loads of the servers depend critically on how the users are assigned to the servers. A good assignment will reduce the overall load of the system while balancing the loads among the servers. Unfortunately, this optimal assignment problem is NP-hard. Therefore, we investigate three heuristic algorithms for solving the user server assignment problem: 1) the centralized simulated annealing (CSA) algorithm; 2) the distributed simulated annealing (DSA) algorithm; and 3) the distributed perturbed greedy search (DPGS). The CSA algorithm produces good solution in the fastest time, however it relies on timely accurate global system information, and is practical only for small and static systems. In contrast, the two distributed algorithms, DSA and DPGS, exploit local information at each server during their search for the optimal assignment, and thus can scale well with the number of users and servers as well as adapting to the system dynamics. Simulation results show that the performance of the distributed algorithms, specifically the DPGS algorithm, is very competitive with that of the centralized algorithm while providing the advantage of naturally adapting to time-varying communication patterns of users.
收起