Publication Date

Spring 2020

Advisor(s) - Committee Chair

Dr. Michael Galloway (Director), Dr. Huanging Wang, Dr. James Gary

Degree Program

School of Engineering and Applied Sciences

Degree Type

Master of Science


The rising use of technology for web applications, android applications, digital marketing, and e-application systems for financial investments benefits a large sector of stakeholders and common people. It allows investors to make an appropriate choice for investment and to increase their capital growth. This requires proper research of investment companies, their trends in price and analysis of historical and current information. In addition, prediction of prices makes the process of investment more comfortable and reliable for investors as shares are the most volatile type of investment. To offer this service to multiple users spread across the globe, there are certain vulnerable challenges for developers: specially to handle peak conditions and to channelize requests to servers in an optimal way. This demands high performance, cost-effective and sustainable approach to manage the concurrent user request on servers. It also needs to manage increasing utilization of computing resources to satisfy the increasing requirement.

The process of balancing simultaneous requests is highly complicated, non-trivial and critical at times, which forces to add a subsystem or an external service to handle requests and balance the resource utilization as per requirements. Load balancing is a method used to channelize requests across the servers in back-end. It helps in improving the performance of the system by optimizing the use of resources, maximizing the throughput and reducing the latency. The traditional method to load balancing is inadequate and inflexible to satisfy the growing demand. Increasing only hardware resources to balance the system is not an effective approach all the time. This needs an in-depth study of jobs to be performed and analysis of various approaches to organize sub-tasks to fulfill the objective.

In this project, four different type of techniques were used for balancing the user requests; they are: round robin, least connected, IP hash and weighted round robin methods. By analyzing the performance of all the computing nodes and by analyzing the logs generated using different load balancing approaches, it was found that weighted round robin resulted in better performance in all the factors: success request rate, failure request rate and average response time. The weight parameter for node 2 and node 3 was 2 and for node 1, it was 1, as computing node 2 and node 3 have better performance than node 1. xviii


Computer and Systems Architecture | Computer Engineering | Data Storage Systems