Skip to Main Content
This paper presents an algorithm for request distribution in clustered EJB systems. A classification for EJB requests is first introduced, on which request distribution is based. The objective is to achieve load balancing and to enhance the caching performance in the EJB containers. The algorithm is based on periodically collecting traffic statistics from the EJB containers, and then solving a constrained optimization problem that finds the best distribution strategies for each request type. An event-driven simulator is built for the performance evaluation, where the TPC-W benchmark is used as the workload. Simulation results show that for relatively small sizes of the containers' caches, the algorithm outperforms the random and round robin algorithms, currently used in clustered EJB systems. In addition, it scales better with the cluster size and can adapt to the varying load patterns.