Font Size: a A A

Research On Load Balancing Algorithms Of Microservice

Posted on:2024-08-29Degree:MasterType:Thesis
Country:ChinaCandidate:Q L YangFull Text:PDF
GTID:2568307136993049Subject:Communication Engineering (including broadband network, mobile communication, etc.) (Professional Degree)
Abstract/Summary:PDF Full Text Request
The demand of new industries and the new mode of sharing economy have brought new challenges to the development of software architecture.Under this background,The concept of microservices was introduced.Microservice architecture is a new type of software architecture that breaks down a single application into a set of fine-grained services that can be independently deployed,maintained,and extended,improving the maintainability and extensibility of the application.The application of load balancing technology is to improve the performance of the system.Load balancing is the practice of evenly distributing requests to servers to avoid overloading some servers in a cluster while others sit idle.In order to improve the performance of microservice cluster,this paper studies load balancing for single microservice nodes and microservice chains.The details are as follows:(1)In view of the unbalanced load of nodes in the microservice cluster under high concurrency,The shortest predictive response time load balancing algorithm(SPRT)based on Xgboost(Extreme Gradient Boosting)was proposed.In this algorithm,the characteristic parameters that affect the response time of request are first selected,then the integrated learning model Xgboost is used to predict the response time of new request,and finally the request is allocated to the server node with the minimum predicted response time,so as to achieve the purpose of load balancing among server nodes.The results show that SPRT,a load balancing algorithm was proposed in this paper,has certain improvements in throughput,cutoff rate and average response time compared with other traditional load balancing algorithms,and is more suitable for microservice clusters in high-concurrency environments.(2)Aiming at the problems of high response time and resource competition of Microservice Chains formed by interactive requests,a Load Balancing Algorithm for Microservice Chains(MCLBA)was proposed.The processing process of different interactive requests forms the crosschain of microservices,but the chain passing through more microservices will have higher delay.The current study simplifies the competition between microservice chains.In the MCLBA algorithm,the response time difference,cluster resource utilization rate and global task response time of the microservice chain were taken as three optimization objectives,and a multi-objective optimization model was proposed for the microservice chain.Then,the improved heuristic algorithm was used to search for the optimal solution,and finally the tasks on the node were rationally scheduled.The results show that MCLBA algorithm can improve not only the resource utilization but also the global response time of the microservice cluster.It also reduces the response time of interactive requests when non-interactive requests have less impact.(3)Based on the load balancing algorithm proposed above,this paper uses the Spring Cloud framework to build a simple microservice cluster to verify the feasibility of the load balancing algorithm,and uses Locust to send different concurrent requests to the microservice cluster to make statistics on the response time and throughput of the requests.Experimental results show that the proposed load balancing algorithm can effectively improve the throughput of microservice clusters and reduce the global response time of requests.
Keywords/Search Tags:Microservice, Load balancing, Microservice chains, Response time, Throughput
PDF Full Text Request
Related items