A load balancing optimization method suitable for server clusters

By constructing a request-response model and a resource utilization model, and combining the entropy method and request scheduling strategy, the load distribution of the server cluster is optimized, which solves the problems of uneven resource utilization and response time latency in the server cluster, and improves the performance and stability of the system.

CN119576547BActive Publication Date: 2025-10-28CHONGQING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411633747.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-15
Publication Date
2025-10-28
Estimated Expiration
2044-11-15

AI Technical Summary

Technical Problem

Existing load balancing strategies cannot effectively address the uneven resource utilization and response time latency issues caused by the increase in the number of servers in a server cluster. Especially in high-concurrency environments, traditional methods struggle to monitor and adjust load conditions in real time.

Method used

Construct a request-response model and a server node resource utilization index model, calculate the impact of resource utilization on load using the entropy method, and design a request scheduling strategy to optimize resource allocation by combining request response time and overall server load.

Benefits of technology

It achieves load balancing of the server cluster in a high-concurrency environment, improves system performance and responsiveness, and ensures the rational use and stability of resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119576547B_ABST
    Figure CN119576547B_ABST
Patent Text Reader

Abstract

This invention relates to a load balancing optimization method for server clusters, belonging to the field of computer science. The method includes: constructing a request-response model for the cluster based on the frequency of service requests arriving at the cluster and the cluster's processing frequency of those requests; calculating the impact of CPU utilization, memory utilization, disk utilization, and network utilization as input indicators using the entropy method, and then constructing a comprehensive load calculation model for server nodes by combining these resource utilization indicators; calculating the real-time response time of requests based on the request-response model and the comprehensive load of server nodes; calculating the comprehensive selectivity of service requests being scheduled to different servers by weighted summing of the comprehensive server load and request response time, and then scheduling the request to the server with the highest selectivity value as the target node. This invention effectively improves the load balancing of server clusters while reducing the average cluster response time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of computer technology, specifically the field of server cluster control technology, and relates to a load balancing optimization method suitable for server clusters. Background Technology

[0002] With the rapid development of cloud computing and big data technologies, server clusters are expanding in scale, making the demand for efficient load balancing increasingly urgent for enterprises. However, existing load balancing strategies often fail to effectively address the challenges brought about by the increasing number of servers in a cluster, especially in high-concurrency environments. Traditional load balancing methods are prone to uneven resource utilization and response time delays. In practical applications, the load on server clusters frequently fluctuates, and the performance indicators (such as CPU, memory, and network bandwidth) of different servers also vary significantly. This necessitates load balancing strategies that can monitor and adjust in real time to adapt to different workloads. Furthermore, different requests impose different loads on servers; some requests may consume a large amount of resources, while others are relatively lightweight. Therefore, there is an urgent need for a load balancing optimization strategy for server clusters that can dynamically monitor the load status of each server and schedule requests based on request type and access frequency to achieve optimal resource utilization and improve the overall system performance and stability. Summary of the Invention

[0003] In view of this, the purpose of this invention is to provide a load balancing optimization method suitable for server clusters, in order to solve the problems of uneven load distribution, high response time latency, and unreasonable resource utilization in current server clusters. By constructing a request-response model and a server node resource utilization index model, the method analyzes the request response time and server node load changes in real time, and constructs a request optimization scheduling strategy to schedule requests to appropriate server nodes for processing, thereby meeting the performance requirements of high-concurrency environments and improving the stability and responsiveness of server clusters.

[0004] To achieve the above objectives, the present invention provides the following technical solution:

[0005] A load balancing optimization method suitable for server clusters includes the following steps:

[0006] S1: Construct a request-response model for the cluster based on the frequency of service requests arriving at the cluster and the frequency of the cluster processing the requests;

[0007] S2: Using CPU utilization, memory utilization, disk utilization, and network utilization as input indicators for the entropy method, calculate their impact on the overall server load, and then combine the various resource utilization indicators to construct an overall load calculation model for the server node.

[0008] S3: Based on the request-response model, the response time of requests is calculated in real time by combining the overall load of server nodes;

[0009] S4: Construct a request scheduling strategy: Calculate the overall selectivity of service requests to be scheduled to different servers by weighted summing of server load and request response time, and then use the server with the highest selectivity value as the target node to schedule requests.

[0010] Furthermore, in step S1, the request-response model of the cluster is constructed, specifically including: assuming there are m server nodes e j The server cluster E is constructed by describing the load brought to the cluster by service requests using the frequency f of service requests arriving at server cluster E and the transaction processing frequency ν. The request-response model expression of the cluster is as follows:

[0011]

[0012] Where t (t = 0, 1, ...) represents time t; F j (t) represents server node e j The set of frequencies of various requests at time t; V j (t) represents server node e j The set of processing frequencies for various types of requests at time t; n represents the types of requests present in the cluster.

[0013] Furthermore, in step S2, a comprehensive load calculation model for the server nodes is constructed, specifically including the following steps:

[0014] S1: Calculate the impact of resource utilization rate on the overall load of server nodes using the entropy method;

[0015] Server node e j Resource utilization rate index U at time t j The expression for (t) is as follows:

[0016] U j (t)={μ j,1 (t),μ j,2 (t),μ j,3 (t),μ j,4 (t)}

[0017] Where, μ j,1 (t)~μ j,4 (t) represent server node e respectively. j CPU utilization, memory utilization, disk utilization, and network utilization at time t;

[0018] Collect resource utilization data from each server node and construct an evaluation matrix X.c×4 There are c sets of observations, collected from m server nodes, with an average of 1,000 observations per server node. The data consists of multiple sets, each containing four resource utilization indicators; the calculation model is as follows:

[0019]

[0020] Where q represents the q-th observation, q∈c; y represents the y-th resource occupancy rate indicator, y=1,2,3,4; p q,y This represents the proportion of the q-th sample under the y-th resource utilization rate indicator, satisfying the following condition: r y This represents the entropy value of the y-th resource utilization index, when p q,y When r = 0, let r y =0; α y This indicates the degree of impact of the y-th resource utilization rate indicator on the overall load of the server node, satisfying...

[0021] S2: Dynamic computing server node e j The weight of the resource utilization rate index at time t is expressed as:

[0022]

[0023] in, Indicates server node e j The resource utilization rate indicator μ of item y above j,y The upper threshold of (t) takes values ​​in the range (0,1]. Then directly put A j (t) is set to 1; α′ j,y (t) represents the service node e j The proportion of the resource utilization rate indicator y at time t satisfies α′ j ′ ,y (t) represents the weight of the y-th resource utilization index on the service node at time t;

[0024] S3: Compute server node e j The combined load A at time t j (t), the calculation formula is:

[0025] Furthermore, in step S3, the response time of the request is calculated, specifically including: when the request arrives at the server cluster, the response time on server node e is calculated based on the type of request. j The request frequency f in the previous moment j,i (t-1), Transaction processing frequency vj,i (t-1) and combined load A j (t-1) Calculate the response time W for this operation. j,i (t), the calculation formula is as follows:

[0026]

[0027] Wherein, σ represents the correction coefficient for the impact of the server node's overall load on the response time. It is obtained by constructing a data sample by collecting request response time, server node's overall load, request frequency, and server's processing frequency for requests, and then fitting it using the least squares method.

[0028] Furthermore, in step S4, constructing the request scheduling strategy specifically includes the following steps:

[0029] 1) Construct the selectivity R(t) of the request for the cluster server nodes, calculated as follows:

[0030]

[0031] Among them, G j,i (t) indicates that a request of type i was made on server node e. j The relative response time at time t, i∈n; and Let λ1 and λ2 represent the minimum and maximum response times of a request of type i on the candidate server node at time t, respectively; λ1 and λ2 represent the weights of the overall load and relative response time of the server node, satisfying λ1 + λ2 = 1.

[0032] Calculate the weights λ1 and λ2, and then calculate the weights in R(t) based on the cluster load. The calculation formula is as follows:

[0033]

[0034] Where ψ represents the correction coefficient, ψ∈(0,5], which is used to control the rate of change of the function and should be set according to the actual system;

[0035] 2) Construct a request scheduling strategy;

[0036] Strategy 1: Move cluster A jStrategy 1: Server nodes with a value not equal to 1 are selected as candidate server nodes for request scheduling; Strategy 2: Calculate the selectivity R(t) of the service request for candidate server nodes, and prioritize the server node with the largest R(t) when scheduling the request; Strategy 3: When the R(t) values ​​of different server nodes are equal, determine the index corresponding to the higher weight, and prioritize the server node with the smallest index value for scheduling. If the index values ​​of different server nodes are also equal, then randomly select one of the server nodes for scheduling; Strategy 4: When the R(t) values ​​of different server nodes are equal and the two weights are equal, prioritize the server node with the smallest weight value. j,i (t) The smallest server node is scheduled, if at this time the G corresponding to different server nodes is... j,i If the values ​​of (t) are also equal, then one of the server nodes will be randomly selected for scheduling.

[0037] The beneficial effects of this invention are as follows: In a server cluster, a request-response model is constructed to accurately assess the impact of different requests on system performance; a resource utilization index model is established to monitor server resource usage in real time and ensure the effectiveness of load balancing; a response time calculation model for different types of requests on different servers is designed, thereby optimizing the processing efficiency of various requests; furthermore, a request optimization scheduling strategy is formulated, which significantly improves the overall performance and responsiveness of the system by intelligently allocating resources and adjusting request flow.

[0038] Other advantages, objectives, and features of the invention will be set forth in part in the description which follows, and in part will be apparent to those skilled in the art from the following examination, or may be learned from practice of the invention. The objectives and other advantages of the invention can be realized and obtained through the following description. Attached Figure Description

[0039] To make the objectives, technical solutions, and advantages of the present invention clearer, the preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings, wherein:

[0040] Figure 1 A flowchart of a load balancing optimization method for server clusters provided by the present invention;

[0041] Figure 2 This is a schematic diagram of the server node comprehensive load calculation process in this invention;

[0042] Figure 3 This is a schematic diagram of the request scheduling process in this invention. Detailed Implementation

[0043] The following specific examples illustrate the implementation of the present invention. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and various details in this specification can be modified or changed based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the illustrations provided in the following embodiments are only schematic representations of the basic concept of the present invention. Unless otherwise specified, the following embodiments and features can be combined with each other.

[0044] Please see Figures 1-3 ,like Figure 1 As shown, this invention provides a load balancing optimization strategy suitable for server clusters, comprising four parts: constructing a request-response model and a server node resource utilization model, constructing a server node comprehensive load calculation model, constructing a request-response time calculation model, and constructing a request scheduling strategy. The specific methods for each part are as follows:

[0045] I. Constructing a request-response model and a server node resource utilization model

[0046] 1) Assume there are m server nodes e j The server cluster E is constructed by describing the load brought to the cluster by service requests using the frequency f of service requests arriving at server cluster E and the transaction processing frequency ν, thus constructing the cluster's request-response model as follows:

[0047]

[0048] Where t (t = 0, 1, ...) represents time t; F j (t) represents server node e j The set of frequencies of various requests at time t; V j (t) represents server node e j The set of processing frequencies for each type of request at time t; n represents the types of requests present in the cluster.

[0049] 2) Construct server node resource utilization metrics to describe the load status of server nodes. Server node e j Resource utilization rate index U at time t j (t) is constructed as follows:

[0050] U j (t)={μ j,1 (t),μ j,2 (t),μ j,3 (t),μ j,4 (t)}

[0051] Where, μj,1 (t)~μ j,4 (t) represent server node e respectively. j CPU utilization, memory utilization, disk utilization, and network utilization at time t.

[0052] II. Server Node Overall Load Calculation Method

[0053] like Figure 2 As shown, the comprehensive load calculation method for server nodes includes two parts: static calculation and dynamic calculation. The static calculation part calculates the impact of cluster resource utilization rate data on the comprehensive load by collecting cluster resource utilization rate data, while the dynamic calculation part calculates the real-time proportion of each resource utilization rate indicator and combines the results of the static calculation part to calculate the weight of the resource utilization rate indicators, and finally obtains the comprehensive load of the server node.

[0054] Based on the above resource utilization indicators, server node e is constructed. j The total load A at time t j The calculation model (t) is as follows:

[0055] S1: Calculate the impact of resource utilization rate on the overall load of server nodes using the entropy method. Collect resource utilization rate data for each server node and construct an evaluation matrix X. c×4 There are c sets of observations, collected from m server nodes, with an average of 1,000 observations per server node. The data consists of multiple sets, each containing four resource utilization metrics. The calculation model is as follows:

[0056]

[0057] Where q (q∈c) represents the q-th observation; y (y=1,2,3,4) represents the y-th resource occupancy rate indicator; p q,y This represents the proportion of the q-th sample under the y-th resource utilization rate indicator, satisfying the following condition: r y This represents the entropy value of the y-th resource utilization index, when p q,y When r = 0, let r y =0; α y This indicates the degree of impact of the y-th resource utilization rate indicator on the overall load of the server node, satisfying...

[0058] S2: Dynamic Computing Server j The weight of the resource utilization rate index at time t:

[0059]

[0060] in, Indicates server node e j The upper limit threshold of the y-th resource occupancy rate indicator is set within the range (0,1]. Then directly put A j (t) is set to 1; α′ j,y (t) represents the service node e j The proportion of the resource utilization rate indicator y at time t satisfies α′ j ′ ,y (t) represents the service node e j The weight of the y-th resource utilization rate indicator at time t;

[0061] S3: Compute server node e j The total load A at time t j (t), the calculation formula is:

[0062] III. Response Time Calculation Method

[0063] When a request arrives at the server cluster, it is processed on server node e based on the type of request. j The request frequency f in the previous moment j,i (t-1), Transaction processing frequency v j,i (t-1) and combined load A j (t-1) Calculate the response time W for this operation. j,i (t). The calculation formula is as follows:

[0064]

[0065] Wherein, σ represents the correction coefficient for the impact of the server node's overall load on the response time. It is obtained by constructing a data sample by collecting request response time, server node's overall load, request frequency, and server's processing frequency for requests, and then fitting it using the least squares method.

[0066] IV. Constructing a Request Scheduling Strategy

[0067] like Figure 3 As shown, when a service request arrives at the cluster, the load balancer will comprehensively consider the load of each server node in the cluster and the selectivity of the request for each server node to select the target server node for optimized scheduling of the request.

[0068] 1) The selectivity R(t) of the construction request for the cluster server nodes is as follows:

[0069]

[0070] Among them, G j,i(t) indicates that a request of type i (i∈n) is made on server node e. j The relative response time at time t; and Let λ1 and λ2 represent the minimum and maximum response times of a request of type i on the candidate server node at time t, respectively; λ1 and λ2 represent the weights of the overall load and relative response time of the server node, satisfying λ1 + λ2 = 1.

[0071] Calculate the weights λ1 and λ2. The weights in R(t) are calculated based on the cluster load, using the following formula:

[0072]

[0073] Where ψ represents the correction coefficient, ψ∈(0,5], which is used to control the rate of change of the function and should be set according to the actual system.

[0074] 2) Construct a request scheduling strategy.

[0075] Strategy 1: Move cluster A j Strategy 1: Server nodes with a value not equal to 1 are selected as candidate server nodes for request scheduling; Strategy 2: Calculate the selectivity R(t) of the service request for candidate server nodes, and prioritize the server node with the largest R(t) when scheduling the request; Strategy 3: When the R(t) values ​​of different server nodes are equal, determine the index corresponding to the higher weight, and prioritize the server node with the smallest index value for scheduling. If the index values ​​of different server nodes are also equal, then randomly select one of the server nodes for scheduling; Strategy 4: When the R(t) values ​​of different server nodes are equal and the two weights are equal, prioritize the server node with the smallest weight value. j,i (t) The smallest server node is scheduled, if at this time the G corresponding to different server nodes is... j,i If the values ​​of (t) are also equal, then one of the server nodes will be randomly selected for scheduling.

[0076] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the present invention, and all such modifications or substitutions should be covered within the scope of the claims of the present invention.

Claims

1. A load balancing optimization method suitable for server clusters, characterized in that, The method specifically includes the following steps: S1: Construct a cluster request-response model based on the frequency of service requests arriving at the cluster and the cluster's processing frequency of those requests. Specifically, this includes: assuming... server nodes The server cluster formed Service requests arrive at the server cluster frequency With transaction processing frequency To describe the load that service requests bring to the cluster, the request-response model expression for the cluster is constructed as follows: in, express time; Indicates server node Various requests in The set of frequencies at any given moment; Indicates server node exist A set of processing frequencies for various types of requests at any given time; Indicates the types of requests present in the cluster; S2: Using CPU utilization, memory utilization, disk utilization, and network utilization as input indicators for the entropy method, calculate their impact on the overall server load, and then combine the various resource utilization indicators to construct a comprehensive load calculation model for the server node. S3: Based on the request-response model, it calculates the request response time in real time by combining the overall load of server nodes. Specifically, this includes: when a request arrives at the server cluster, the response time of the request on the server node is calculated based on the type of request. Request frequency in the previous moment Transaction processing frequency and overall load Calculate the response time for this operation. The calculation formula is as follows: in, The correction coefficient representing the impact of the overall load of server nodes on response time is obtained by constructing a data sample by collecting request response time, overall load of server nodes, request frequency, and server processing frequency for requests, and then fitting the sample using the least squares method. S4: Construct a request scheduling strategy: Calculate the overall selectivity of service requests to be scheduled to different servers by weighted summing of server load and request response time, and then use the server with the highest selectivity value as the target node to schedule requests.

2. The load balancing optimization method according to claim 1, characterized in that, Step S2 involves constructing a comprehensive load calculation model for the server nodes, specifically including the following steps: S1: Calculate the impact of resource utilization rate on the overall load of server nodes using the entropy method; server node In the Resource utilization rate at any time The expression is as follows: in, Representing server nodes exist CPU usage, memory usage, disk usage, and network usage at any given time; Collect resource utilization data from each server node and construct an evaluation matrix. Among them, there are a total of Group observations, respectively from Data collected from multiple server nodes, with an average of [data collected per server node]... The data consists of multiple sets, each containing four resource utilization indicators; the calculation model is as follows: in, Indicates the first Group observations, ; Indicates the first Resource utilization rate indicator ; Indicates the first The resource utilization rate index is the first The proportion of each sample satisfies ; Indicates the first The entropy value of the resource utilization rate indicator, when season ; Indicates the first The degree of impact of the resource utilization rate indicator on the overall load of server nodes, meeting the requirements. ; S2: Dynamic Computing Server Node The resource utilization rate indicator is The weights at time points are expressed as follows: in, Indicates server node Upper Resource utilization rate index The upper limit threshold, with a value range of . ,like Then directly Set to 1; Indicates service node Upper Resource utilization rate indicator The proportion of time required to meet the requirements ; Indicates the first service node Resource utilization rate indicator The weight of each moment; S3: Compute server node exist Comprehensive load at any time The calculation formula is: 。 3. The load balancing optimization method according to claim 2, characterized in that, Step S4, constructing the request scheduling strategy specifically includes the following steps: 1) Construct the selectivity of requests for cluster server nodes The calculation formula is as follows: in, The type is The request is on the server node Upper The relative response time at any given moment. ; and They represent types respectively The request was made on the alternate server node. Minimum and maximum response times at any given moment; and This represents the weighting of the overall load and relative response time of a server node, satisfying... ; Calculate weights and Calculate based on cluster load The weights in the formula are calculated as follows: in, Indicates the correction factor. This is used to control the rate of change of the function and should be set according to the actual system. 2) Construct a request scheduling strategy; Strategy 1: Within the cluster Server nodes with a value not equal to 1 are considered as candidate server nodes for request scheduling; Strategy 2: Calculate the selectivity of service requests for candidate server nodes. When making a scheduling request, prioritize selecting The largest server node serves as the service node; Strategy 3: When different server nodes... When values ​​are equal, determine the metric corresponding to the higher weight and prioritize scheduling the server node with the smallest metric value. If the metric values ​​for different server nodes are also equal, randomly select one of the server nodes for scheduling. Strategy 4: When different server nodes... When values ​​are equal or two weights are equal, choose the one with the highest priority. The smallest server node is scheduled; if different server nodes correspond to... If the values ​​are equal, one of the server nodes will be randomly selected for scheduling.

Citation Information

Patent Citations

  • Server load balancing method and device and storage medium

    CN110389841A

  • Dynamic load balancing method for request classification processing based on heterogeneous cluster

    CN112835698A