In stateful ESs, a user who logs onto an application server and stays connected to the server for an entire working session, which can last for days, evokes each application. Therefore, admitting a user onto an application server affects not only current but also future performance of that server. Although the n-tier architecture may involve web servers, there is little in the literature in Distributed Web Server Architectures that considers the effects of distributing users instead of individual requests to servers.
The algorithm proposed in this paper gives specific suggestions in user distributions and the minimal number of servers required based on the application reusability threshold. A heuristic version of the algorithm is also presented to improve the performance. The paper also discusses how to apply association rules to predict new user behavior when distributing users in the run-time. The distributions recommended by the algorithms are compared against the Round-Robin distributions on a set of real data derived from a mid size company. The result shows that the user distributions suggested have better performance than Round Robin distributions.