Self-adaptive load balancing method and system based on server state analysis
By dynamically calculating server load priority and adjusting task allocation plans, combining task priority model and user behavior prediction, the problem of difficulty in responding to burst load needs in a timely manner in the existing technology is solved, and efficient resource utilization and task-critical resource guarantee are achieved.
Patent Information
- Application Number
- CN202510021556.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-06
- Publication Date
- 2025-05-23
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In the prior art, server load balancing methods based on fixed policies are difficult to respond to burst load demands in a timely manner, resulting in resource overload or idleness, and the resource allocation cannot be dynamically adjusted according to task priority, affecting business stability and user experience.
By obtaining and analyzing the real-time operating status data of the server, dynamically calculate the load priority of each server, and dynamically adjust the task allocation plan based on resource utilization efficiency and network traffic fluctuations. At the same time, the task priority model and user behavior prediction are used to identify and respond to burst load requirements and dynamically isolate resource allocation for critical tasks.
It realizes accurate allocation of tasks between server nodes, avoids resource overload and idleness, improves overall resource utilization, and can quickly respond to high-priority task requirements, ensuring that resource requirements for critical tasks are given priority.
Smart Images

Figure CN120029762A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of load balancing, and in particular to an adaptive load balancing method and system based on server status analysis. Background Art
[0002] In the related art, the server load balancing method is mostly based on fixed strategies. Although the method based on fixed strategies is simple to implement, it is unable to optimize resource allocation according to the real-time operation status of the server and the dynamically changing task requirements.
[0003] Therefore, when faced with sudden load demands, the server load balancing method based on a fixed strategy is difficult to respond in a timely manner, which can easily lead to overload of some server resources while other server resources are idle, reducing the overall resource utilization.
[0004] On the other hand, the resource guarantee mechanism for critical tasks in related technologies is also relatively weak, and it is usually impossible to dynamically adjust resource allocation according to task priority. As a result, under high load conditions, critical tasks may not be completed on time due to insufficient resources, thus affecting business stability and user experience. Summary of the invention
[0005] The present application provides an adaptive load balancing method and system based on server status analysis, aiming to solve the technical problem in related technologies that sudden load demands cannot be responded to in a timely manner, thereby avoiding the subsequent problem of being unable to dynamically adjust resource allocation according to task priority.
[0006] In order to achieve the above object, the present application provides an adaptive load balancing method based on server status analysis, comprising the following steps:
[0007] Obtain and record the server's operating status data.
[0008] Analyze the server's operating status data and dynamically calculate the load priority of each server.
[0009] According to the load priority calculation results, combined with the computing resource utilization efficiency and network traffic fluctuations, the server task allocation plan is dynamically adjusted.
[0010] Apply dynamically adjusted task allocation schemes, combined with task priority models and user behavior predictions, to predict and identify sudden load demand results.
[0011] According to the burst load demand results, the pre-allocated resources are dynamically adjusted to meet the burst load demand.
[0012] Identify load pressure based on server operating status data and dynamically isolate resource allocation for critical tasks.
[0013] Preferably, obtaining and recording the running status data of the server specifically includes:
[0014] Obtain the server's operating status data, which includes CPU usage, memory usage, storage usage, and network traffic status data. Record the operating status data and store it in the cloud server.
[0015] Preferably, analyzing the running status data of the server and dynamically calculating the load priority of each server specifically includes:
[0016] Normalize the server's operating status data, and calculate the server's comprehensive load index based on the normalized operating status data. The specific calculation formula is:
[0017]
[0018] Where n is the number of monitoring indicators, w k is the weight of the kth running status data, L i is the comprehensive load index, U k ′ is the normalized value of the kth operating status data.
[0019] It should be noted that w k The value range must satisfy
[0020] The dynamic load priority is calculated based on the comprehensive load index and the current task weight of the server:
[0021]
[0022] Where P i is the load priority of the i-th server, T i is the weight of the task currently running on the server, L i Represents the comprehensive load index, ∈ represents a small value, which is used to avoid the denominator being zero.
[0023] Preferably, according to the load priority calculation result, combined with the computing resource utilization efficiency and the fluctuation of network traffic, the task allocation scheme of the server is dynamically adjusted, specifically including:
[0024] According to the comprehensive load index P i , set the priority threshold P threshold , all satisfying P i >P threshold The servers are marked as high priority server set S high , the rest are low priority server set S low .
[0025] For each high-priority server, its current computing resource utilization and network traffic fluctuation are calculated, and the overall resource utilization efficiency and network traffic fluctuation of the high-priority server set are obtained through the weighted average method.
[0026] For each low-priority server, its current computing resource utilization and network traffic fluctuation are calculated, and the overall resource utilization efficiency and network traffic fluctuation of the low-priority server set are obtained through the weighted average method.
[0027] Dynamically adjust the task allocation scheme between high-priority servers and low-priority servers based on the overall resource utilization efficiency and network traffic fluctuations.
[0028] Preferably, according to the overall resource utilization efficiency and network traffic fluctuation, the task allocation scheme between high-priority servers and low-priority servers is dynamically adjusted, specifically including:
[0029] For each high-priority server and low-priority server, set the resource utilization R threshold and network traffic fluctuations F threshold The threshold is used to determine whether the current server needs to readjust the task allocation strategy.
[0030] R threshold It is the resource utilization threshold, which is used to determine whether the server is idle. If the utilization of the current server is lower than this value, it means that the current server has additional computing resources to process tasks.
[0031] F threshold It is the network traffic fluctuation threshold, which is used to determine whether the network load is too high. If the network traffic fluctuation of the current server exceeds this value, it means that the current server faces a network bottleneck and task allocation will be affected.
[0032] Dynamically adjust the task allocation between high-priority servers and low-priority servers based on resource utilization thresholds and network traffic fluctuation thresholds.
[0033] Preferably, according to the resource utilization threshold and the network traffic fluctuation threshold, the task allocation between the high priority server and the low priority server is dynamically adjusted, specifically including:
[0034] For the current server with high priority, if the current server resource utilization R i and network traffic fluctuations F i Both are lower than the set threshold R tbreshold and F threshold , then the current server is considered to have additional computing resources, and the task allocation of the current server is increased. The allocation method is:
[0035] Tassign =α·T current
[0036] Where, T assign is the amount of new tasks assigned to the high-priority server, T current is the amount of tasks currently being executed by the server, and α is the adjustment coefficient, which is used to indicate the increased amount of tasks.
[0037] For the current server with low priority, if the current server resource utilization R i ′ or network traffic fluctuation F i ' exceeds the set threshold R threshold or F threshold , it means that the current server faces a resource bottleneck and cannot handle more tasks. Some tasks will be migrated to high-priority servers. The specific calculation formula for task migration is as follows:
[0038] T migrate =β·T excess
[0039] Among them, T migrate is the amount of tasks that need to be migrated, T escess is the amount of tasks that exceeds the threshold value for the current load of the low-priority server, and β is the migration coefficient, which indicates the proportion of the amount of migration tasks that exceeds the threshold value.
[0040] Preferably, the dynamically adjusted task allocation scheme is applied, and combined with the task priority model and user behavior prediction, to predict and identify the sudden load demand results, specifically including:
[0041] According to the nature, execution time, dependencies and real-time requirements of the task, a priority value is calculated for each task, and the task characteristics are quantitatively evaluated through weighted calculation method to obtain the priority weight of the task. The tasks are sorted according to the task priority weight and the processing order of the tasks is determined.
[0042] Obtain user behavior data, analyze user access patterns, request frequencies, and computing resources, use the LSTM method to model future load demands, generate prediction results based on the established LSTM model, and identify sudden load demand results based on the prediction results.
[0043] Preferably, according to the burst load demand result, dynamically adjusting the pre-allocated resources to meet the burst load demand specifically includes:
[0044] Based on historical operation data and load trend analysis, the resource requirements of different tasks in each time period are predicted, including computing resources, storage resources and network bandwidth; based on the predicted resource requirements, the available resource pool is allocated to each server node in proportion, and the corresponding computing and storage resources are reserved for high-priority tasks. Priority is given to task areas that have experienced load fluctuations in historical data, and a spare resource pool is reserved for sudden loads. The pre-allocation ratio is dynamically adjusted according to the utilization of the allocated resources.
[0045] Re-evaluate whether the current pre-allocated resources are sufficient based on the type of burst load demand results and the amount of resource demand; in the case of insufficient computing resources, call additional computing nodes from the backup resource pool; in the case of increased storage resource demand, dynamically adjust the storage partition capacity, or allocate storage resources among available nodes; in the case of a sudden increase in network traffic demand, optimize the network traffic routing strategy and redistribute the traffic to server nodes with idle bandwidth; if resources are still insufficient, limit or delay resource allocation for low-priority tasks through the task priority mechanism, and allocate resources to high-priority tasks first.
[0046] Preferably, the load pressure is identified according to the running status data of the server, and resource allocation of key tasks is dynamically isolated, specifically including:
[0047] Analyze the current load pressure of each server through server operation status data, including computing resource utilization, storage occupancy and network traffic.
[0048] Set the load pressure threshold D threshold If the load pressure of the current server exceeds the threshold, the current server is marked as being in a high load state.
[0049] For servers in a high-load state, the currently running critical tasks are identified and their resources are dynamically isolated based on task priority.
[0050] Through resource isolation strategies, the resource allocation scheme of non-critical tasks is dynamically adjusted, including reducing the resource allocation weight of non-critical tasks or migrating them to other servers that are not under high load.
[0051] Monitor the isolated mission-critical resources to confirm that their resource requirements are met, and dynamically release the isolated resources based on changes in load pressure.
[0052] The present application also provides an adaptive load balancing system based on server status analysis, including the following modules:
[0053] The data acquisition unit is used to acquire and record the running status data of the server.
[0054] The priority calculation unit is used to analyze the operation status data of the server and dynamically calculate the load priority of each server.
[0055] The dynamic adjustment unit is used to dynamically adjust the task allocation plan of the server according to the load priority calculation result, combined with the computing resource utilization efficiency and the fluctuation of network traffic.
[0056] The identification and prediction unit is used to apply the dynamically adjusted task allocation scheme and combine the task priority model and user behavior prediction to predict and identify the sudden load demand results.
[0057] The pre-allocation unit is used to dynamically adjust the pre-allocated resources to meet the burst load demand according to the burst load demand result.
[0058] The dynamic isolation unit is used to identify load pressure based on the server's operating status data and dynamically isolate resource allocation for critical tasks.
[0059] The beneficial effects of this application are:
[0060] 1. This application collects real-time operating status data of the server and calculates dynamic load priorities to achieve accurate allocation of tasks among server nodes. Compared with fixed strategies, it can more effectively avoid resource overload and idleness and improve overall resource utilization. In addition, by combining the task priority model and the user behavior prediction model, it can achieve accurate prediction of future load demands. In the face of sudden loads, it can dynamically adjust pre-allocated resources and call the backup resource pool to quickly respond to high-priority task demands.
[0061] 2. Under high load conditions, by analyzing task priorities and dynamically isolating resource allocation for critical tasks, it ensures that the resource needs of critical tasks are prioritized, effectively preventing critical tasks from being affected by resource competition, and achieving refined management and optimization of resources by adjusting resource allocation strategies in real time; under high load conditions, resources are further released by downgrading the execution priority of non-critical tasks, providing more support for critical tasks, thereby improving resource utilization and task execution efficiency.
[0062] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, preferred embodiments are specifically cited below and described in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0064] Figure 1 A flowchart of an adaptive load balancing method based on server status analysis provided in an embodiment of the present application.
[0065] Figure 2 An architectural diagram of an adaptive load balancing system based on server status analysis provided in an embodiment of the present application. DETAILED DESCRIPTION
[0066] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0067] See also Figure 1 , Figure 1 A flowchart of an adaptive load balancing method based on server status analysis is provided for an embodiment of the present application.
[0068] In this embodiment, the adaptive load balancing method based on server status analysis includes step S100, step S200, step S300, step S400, step S500 and step S600.
[0069] Step S100, obtaining and recording the running status data of the server, specifically includes:
[0070] Obtain the server's operating status data, which includes CPU usage, memory usage, storage usage, and network traffic status data. Record the operating status data and store it in the cloud server.
[0071] It should be noted that the data collection agent is deployed through the distributed monitoring tool to obtain the server's operating status data, and the obtained operating status data is transmitted to the cloud server through HTTP / 2 in the lightweight transmission protocol.
[0072] Step S200: analyzing the running status data of the server and dynamically calculating the load priority of each server, specifically including:
[0073] Normalize the server's operating status data, and calculate the server's comprehensive load index based on the normalized operating status data. The specific calculation formula is:
[0074]
[0075] Where n is the number of monitoring indicators, w k is the weight of the kth running status data, L i is the comprehensive load index, U k ′ is the normalized value of the kth operating status data.
[0076] It should be noted that w kThe value range must satisfy
[0077] The dynamic load priority is calculated based on the comprehensive load index and the current task weight of the server:
[0078]
[0079] Where P i is the load priority of the i-th server, T i is the weight of the task currently running on the server, L i Represents the comprehensive load index, ∈ represents a small value, which is used to avoid the denominator being zero.
[0080] It should be noted that the server's operating status data is normalized as follows:
[0081]
[0082] Among them, U k ′ is the normalized value of the kth running status data, and are the historical minimum and maximum values of the kth operating status data respectively. After normalization, the range of all data values is unified to [0, 1].
[0083] Step S300: dynamically adjust the task allocation scheme of the server according to the load priority calculation result, combined with the computing resource utilization efficiency and the fluctuation of network traffic, specifically including:
[0084] According to the comprehensive load index P i , set the priority threshold P threshold , all satisfying P i >P threshold The servers are marked as high priority server set S high , the rest are low priority server set S low .
[0085] For each high-priority server, its current computing resource utilization and network traffic fluctuation are calculated, and the overall resource utilization efficiency and network traffic fluctuation of the high-priority server set are obtained through the weighted average method.
[0086] For each low-priority server, its current computing resource utilization and network traffic fluctuation are calculated, and the overall resource utilization efficiency and network traffic fluctuation of the low-priority server set are obtained through the weighted average method.
[0087] Dynamically adjust the task allocation between high-priority servers and low-priority servers based on overall resource utilization efficiency and network traffic fluctuations, including:
[0088] For each high-priority server and low-priority server, set the resource utilization R threshold and network traffic fluctuations F threshold The threshold is used to determine whether the current server needs to readjust the task allocation strategy.
[0089] R threshold It is the resource utilization threshold, which is used to determine whether the server is idle. If the utilization of the current server is lower than this value, it means that the current server has additional computing resources to process tasks.
[0090] F threshold It is the network traffic fluctuation threshold, which is used to determine whether the network load is too high. If the network traffic fluctuation of the current server exceeds this value, it means that the current server faces a network bottleneck and task allocation will be affected.
[0091] Dynamically adjust the task allocation between high-priority servers and low-priority servers based on the resource utilization threshold and network traffic fluctuation threshold, including:
[0092] For the current server with high priority, if the current server resource utilization R i and network traffic fluctuations F i Both are lower than the set threshold R tbreshold and F threshold , then the current server is considered to have additional computing resources, and the task allocation of the current server is increased. The allocation method is:
[0093] T assign =α·T current
[0094] Where, T assign is the amount of new tasks assigned to the high-priority server, T current is the amount of tasks currently being executed by the server, and α is the adjustment coefficient, which is used to indicate the increased amount of tasks.
[0095] For the current server with low priority, if the current server resource utilization R i ′ or network traffic fluctuation F i ' exceeds the set threshold R threshold or F threshold , it means that the current server faces a resource bottleneck and cannot handle more tasks. Some tasks will be migrated to high-priority servers. The specific calculation formula for task migration is as follows:
[0096] T migrate =β·T excess
[0097] Among them, T migrateis the amount of tasks that need to be migrated, T excess is the amount of tasks that exceeds the threshold value for the current load of the low-priority server, and β is the migration coefficient, which indicates the proportion of the amount of migration tasks that exceeds the threshold value.
[0098] It should be noted that the specific process of task migration is as follows:
[0099] A1. Identify the overload of low-priority servers: When R i ′>R threshold or F i ′>F threshold , if the current server meets the above conditions, the current server is marked as overloaded.
[0100] A2. Select the target server for task migration: From the high-priority server set S high In the migration process, select idle servers with low resource utilization as the migration target. Prioritize servers with light current load and small network traffic fluctuations to ensure that the new server will not be overloaded after the task is migrated.
[0101] A3. Dynamic migration task: T migrate Tasks are migrated from low-priority servers to target high-priority servers.
[0102] A4. Adjust the task load of the high-priority server: After migrating the task, adjust the load distribution strategy of the target high-priority server to ensure that its load is not too high.
[0103] Step S400: Apply the dynamically adjusted task allocation scheme, and combine the task priority model and user behavior prediction to predict and identify the sudden load demand results, specifically including:
[0104] According to the nature, execution time, dependencies and real-time requirements of the task, a priority value is calculated for each task, and the task characteristics are quantitatively evaluated through weighted calculation method to obtain the priority weight of the task. The tasks are sorted according to the task priority weight and the processing order of the tasks is determined.
[0105] It should be noted that the following formula is used to weight and quantify the task features:
[0106]
[0107] In the formula, m is the number of task features, v i is the weight of the i-th feature, F i is the normalized value of the ith feature. The weight v i It can be adjusted dynamically according to the business importance of the task or historical operation data; according to the calculated priority value W task, sort the task queue, and tasks with higher priority values will be allocated resources first.
[0108] Obtain user behavior data, analyze user access patterns, request frequencies, and computing resources, use the LSTM method to model future load demands, generate prediction results based on the established LSTM model, and identify sudden load demand results based on the prediction results.
[0109] It should be noted that based on the historical user behavior data, LSTM is used to build a load demand prediction model; the LSTM model is suitable for capturing the law of user behavior changes over time, and building an LSTM prediction model includes: an input layer, which is used to contain the multi-dimensional features of user behavior data; a hidden layer is used to capture long-term and short-term dependencies based on LSTM units; an output layer is used to predict future load demand; and the real-time user behavior data is predicted based on the trained LSTM model to generate the load demand trend within the next 30 minutes.
[0110] It should be further explained that the prediction results of the LSTM model are compared with the current operating status, the load trend is evaluated based on the difference between the two, the difference between the load trend and the operating status trend is analyzed, and the sudden load demand result is obtained.
[0111] Step S500: dynamically adjusting pre-allocated resources to meet the burst load demand according to the burst load demand result, specifically including:
[0112] Based on historical operation data and load trend analysis, the resource requirements of different tasks in each time period are predicted, including computing resources, storage resources and network bandwidth; based on the predicted resource requirements, the available resource pool is allocated to each server node in proportion, and the corresponding computing and storage resources are reserved for high-priority tasks. Priority is given to task areas that have experienced load fluctuations in historical data, and a spare resource pool is reserved for sudden loads. The pre-allocation ratio is dynamically adjusted according to the utilization of the allocated resources.
[0113] Re-evaluate whether the current pre-allocated resources are sufficient based on the type of burst load demand results and the amount of resource demand; in the case of insufficient computing resources, call additional computing nodes from the backup resource pool; in the case of increased storage resource demand, dynamically adjust the storage partition capacity, or allocate storage resources among available nodes; in the case of a sudden increase in network traffic demand, optimize the network traffic routing strategy and redistribute the traffic to server nodes with idle bandwidth; if resources are still insufficient, limit or delay resource allocation for low-priority tasks through the task priority mechanism, and allocate resources to high-priority tasks first.
[0114] It should be noted that the burst load demand results are broken down into specific resource dimensions, including computing resources, storage resources, and network resources. For different task types, key resources are allocated to high-priority tasks first, specifically:
[0115] Computation-intensive tasks are preferentially assigned to high-performance computing nodes.
[0116] Storage-intensive tasks are preferentially assigned to low-latency storage devices.
[0117] Bandwidth-sensitive tasks are prioritized over high-speed network paths.
[0118] It should be further explained that the capacity of the backup resource pool is dynamically adjusted according to historical load fluctuations, the number of available nodes of backup resources is increased during peak load periods, and the reserved backup resources are reduced during off-peak periods; and the backup resource pool is layered according to resource type to ensure that when sudden demands occur, resource calls are targeted and responsive.
[0119] It is further necessary to explain that, based on the traffic prediction of the burst load, the routing strategy is recalculated to distribute the traffic to the server nodes with lower network bandwidth utilization to avoid single point congestion.
[0120] It should be further explained that when there are restrictions on resource allocation, the execution rate of low-priority tasks can be reduced or non-real-time tasks can be adjusted to batch execution to reduce competition for computing resources. Low-priority tasks can be suspended and executed again after resources are restored to ensure that high-priority tasks receive sufficient resource support.
[0121] Step S600, identifying load pressure according to the running status data of the server, and dynamically isolating resource allocation of key tasks, specifically includes:
[0122] Analyze the current load pressure of each server through server operation status data, including computing resource utilization, storage occupancy and network traffic.
[0123] Set the load pressure threshold D threshold If the load pressure of the current server exceeds the threshold, the current server is marked as being in a high load state.
[0124] For servers in a high-load state, the currently running critical tasks are identified and their resources are dynamically isolated based on task priority.
[0125] Through resource isolation strategies, the resource allocation scheme of non-critical tasks is dynamically adjusted, including reducing the resource allocation weight of non-critical tasks or migrating them to other servers that are not under high load.
[0126] Monitor the isolated mission-critical resources to confirm that their resource requirements are met, and dynamically release the isolated resources based on changes in load pressure.
[0127] It should be noted that the comprehensive load pressure index is calculated based on the server operation status data according to the following formula:
[0128] D i =α·C i +β·S i +γ·N i
[0129] In the formula, C i : The CPU usage of the current server; S i : The storage usage of the current server; N i : The network traffic utilization rate of the current server; α, β, γ represent the weights of each resource, which are adjusted dynamically according to the application scenario; when D i >D threshold , marks the current server as being in a high load state.
[0130] It should be further explained that the task priority model is used to classify the currently running tasks and identify high-priority critical tasks. Critical tasks are tasks with high real-time requirements and high business importance. Independent resource pools are reserved for critical tasks, specifically:
[0131] Lock a corresponding number of CPU cores and memory for exclusive use by critical tasks.
[0132] Limit the frequency of access to shared resources by non-critical tasks.
[0133] Set network traffic limits to prioritize bandwidth for critical tasks.
[0134] It should be further explained that resource adjustments for non-critical tasks include:
[0135] Dynamically reduce the resource allocation weight of non-critical tasks, reduce the CPU thread weight of non-critical tasks, and give priority to computing resources; queue storage I / O requests for non-critical tasks to reduce competition for disks.
[0136] For non-critical tasks, servers with lower loads are prioritized for migration. Specific operations include: selecting the target server for migration by querying the load status in real time; dynamically adjusting the task scheduling queue to ensure that the migration process is transparent to users.
[0137] It should be further explained that dynamic monitoring of resources after isolation should continuously monitor the usage of critical task resources after isolation, including the utilization rate of computing, storage and network resources. When the server load returns to the normal range, the isolated resources will be gradually released and the normal resource allocation of non-critical tasks will be restored.
[0138] At this point, the adaptive load balancing method based on server status analysis is completed.
[0139] See also Figure 2 , Figure 2 An architectural diagram of an adaptive load balancing system based on server status analysis provided in an embodiment of the present application.
[0140] The adaptive load balancing system based on server status analysis includes the following modules:
[0141] A data acquisition unit is used to acquire and record the operating status data of the server; a priority calculation unit is used to analyze the operating status data of the server and dynamically calculate the load priority of each server; a dynamic adjustment unit is used to dynamically adjust the server's task allocation plan based on the load priority calculation result, combined with the computing resource utilization efficiency and the fluctuation of network traffic; an identification and prediction unit is used to apply the dynamically adjusted task allocation plan, and combine the task priority model and user behavior prediction to predict and identify the results of sudden load demand; a pre-allocation unit is used to dynamically adjust the pre-allocated resources to meet the sudden load demand according to the sudden load demand result; a dynamic isolation unit is used to identify the load pressure according to the server's operating status data and dynamically isolate the resource allocation of key tasks.
[0142] At this point, the adaptive load balancing system based on server status analysis is completed.
[0143] The above is only a specific implementation of the present invention, but the protection scope of the embodiments of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the embodiments of the present invention, which should be included in the protection scope of the embodiments of the present invention. Therefore, the protection scope of the embodiments of the present invention shall be based on the protection scope of the claims.
Claims
1. An adaptive load balancing method based on server status analysis, characterized in that: The following steps are involved: Obtain and record the server's operating status data; Analyze the server's operating status data and dynamically calculate the load priority of each server; According to the load priority calculation results, combined with the computing resource utilization efficiency and network traffic fluctuations, the server task allocation plan is dynamically adjusted; Apply dynamically adjusted task allocation schemes and combine task priority models and user behavior predictions to predict and identify sudden load demand results; According to the burst load demand results, dynamically adjust the pre-allocated resources to meet the burst load demand; Identify load pressure based on server operating status data and dynamically isolate resource allocation for critical tasks.
2. The adaptive load balancing method based on server status analysis according to claim 1, characterized in that: Obtain and record the server's operating status data, including: Obtain the server's operating status data, which includes CPU usage, memory usage, storage usage, and network traffic status data. Record the operating status data and store it in the cloud server.
3. The adaptive load balancing method based on server status analysis according to claim 1, characterized in that: Analyze the server's operating status data and dynamically calculate the load priority of each server, including: Normalize the server's operating status data, and calculate the server's comprehensive load index based on the normalized operating status data. The specific calculation formula is: Where n is the number of monitoring indicators, w k is the weight of the kth running status data, L i is the comprehensive load index, U k ′ is the normalized value of the kth operating status data; The dynamic load priority is calculated based on the comprehensive load index and the current task weight of the server: Where P i is the load priority of the i-th server, T i is the weight of the task currently running on the server, L i Represents the comprehensive load index, ∈ represents a small value, which is used to avoid the denominator being zero.
4. The adaptive load balancing method based on server status analysis according to claim 1, characterized in that: According to the load priority calculation results, combined with the computing resource utilization efficiency and network traffic fluctuations, the server task allocation plan is dynamically adjusted, including: According to the comprehensive load index P i , set the priority threshold P threshold , all satisfying P i >P threshold The servers are marked as high priority server set S high , the rest are low priority server set S low ; For each high-priority server, calculate its current computing resource utilization and network traffic fluctuation, and use the weighted average method to obtain the overall resource utilization efficiency and network traffic fluctuation of the high-priority server set; For each low-priority server, calculate its current computing resource utilization and network traffic fluctuation, and use the weighted average method to obtain the overall resource utilization efficiency and network traffic fluctuation of the low-priority server set; Dynamically adjust the task allocation scheme between high-priority servers and low-priority servers based on the overall resource utilization efficiency and network traffic fluctuations.
5. The adaptive load balancing method based on server status analysis according to claim 3, characterized in that: Dynamically adjust the task allocation between high-priority servers and low-priority servers based on overall resource utilization efficiency and network traffic fluctuations, including: For each high-priority server and low-priority server, set the resource utilization R threshold and network traffic fluctuations F threshold The threshold is used to determine whether the current server needs to readjust the task allocation strategy; R threshold It is the resource utilization threshold, which is used to determine whether the server is idle. If the utilization of the current server is lower than this value, it means that the current server has additional computing resources to process tasks. F threshold The network traffic fluctuation threshold is used to determine whether the network load is too high. If the network traffic fluctuation of the current server exceeds this value, it means that the current server faces a network bottleneck and task allocation will be affected. Dynamically adjust the task allocation between high-priority servers and low-priority servers based on resource utilization thresholds and network traffic fluctuation thresholds.
6. The adaptive load balancing method based on server status analysis according to claim 5, characterized in that: Dynamically adjust the task allocation between high-priority servers and low-priority servers based on the resource utilization threshold and network traffic fluctuation threshold, including: For the current server with high priority, if the current server resource utilization R i and network traffic fluctuations F i Both are lower than the set threshold R tbreshold and F threshold , then the current server is considered to have additional computing resources, and the task allocation of the current server is increased. The allocation method is: T assign =α·T current Where, T assign is the amount of new tasks assigned to the high-priority server, T current is the amount of tasks currently being executed by the server, and α is the adjustment coefficient, which is used to indicate the increased amount of tasks; For the current server with low priority, if the current server resource utilization R i ′ or network traffic fluctuation F i ' exceeds the set threshold R threshold or F threshold , it means that the current server faces a resource bottleneck and cannot handle more tasks. Some tasks will be migrated to high-priority servers. The specific calculation formula for task migration is as follows: T migrate =β·T excess Among them, T migrate is the amount of tasks that need to be migrated, T excess is the amount of tasks that exceeds the threshold value for the current load of the low-priority server, and β is the migration coefficient, which indicates the proportion of the amount of migration tasks that exceeds the threshold value.
7. The adaptive load balancing method based on server status analysis according to claim 1, characterized in that: Apply the dynamically adjusted task allocation plan, combined with the task priority model and user behavior prediction, to predict and identify sudden load demand results, including: Calculate a priority value for each task based on the nature, execution time, dependencies, and real-time requirements of the task, and quantify and evaluate the task characteristics through weighted calculation to obtain the priority weight of the task. Then sort the tasks according to the priority weight and determine the processing order of the tasks. Obtain user behavior data, analyze user access patterns, request frequencies, and computing resources, use the LSTM method to model future load demands, generate prediction results based on the established LSTM model, and identify sudden load demand results based on the prediction results.
8. The adaptive load balancing method based on server status analysis according to claim 1, characterized in that: According to the burst load demand results, dynamically adjust the pre-allocated resources to meet the burst load demand, including: Based on historical operation data and load trend analysis, the resource requirements of different tasks in each time period are predicted, including computing resources, storage resources and network bandwidth; based on the predicted resource requirements, the available resource pool is proportionally allocated to each server node, and the corresponding computing and storage resources are reserved for high-priority tasks, with priority given to task areas that have experienced load fluctuations in historical data, while retaining a spare resource pool for sudden loads, and dynamically adjusting the pre-allocation ratio based on the utilization of the allocated resources; Re-evaluate whether the current pre-allocated resources are sufficient based on the type of burst load demand results and the amount of resource demand; in the case of insufficient computing resources, call additional computing nodes from the backup resource pool; in the case of increased storage resource demand, dynamically adjust the storage partition capacity, or allocate storage resources among available nodes; in the case of a sudden increase in network traffic demand, optimize the network traffic routing strategy and redistribute the traffic to server nodes with idle bandwidth; if resources are still insufficient, limit or delay resource allocation for low-priority tasks through the task priority mechanism, and allocate resources to high-priority tasks first.
9. The adaptive load balancing method based on server status analysis according to claim 1, characterized in that: Identify load pressure based on server operation status data and dynamically isolate resource allocation for key tasks, including: Analyze the current load pressure of each server through server operation status data, including computing resource utilization, storage occupancy and network traffic; Set the load pressure threshold D threshold , if the load pressure of the current server exceeds the threshold, the current server is marked as being in a high load state; For servers in a high-load state, identify the critical tasks currently running and dynamically isolate their resources based on task priority; Dynamically adjust resource allocation plans for non-critical tasks through resource isolation strategies, including reducing resource allocation weights for non-critical tasks or migrating them to other servers that are not under high load; Monitor the isolated mission-critical resources to confirm that their resource requirements are met, and dynamically release the isolated resources based on changes in load pressure.
10. An adaptive load balancing system based on server status analysis, characterized in that: The system applies the adaptive load balancing method based on server status analysis according to any one of claims 1 to 9, and comprises the following modules: The data acquisition unit is used to acquire and record the running status data of the server: A priority calculation unit is used to analyze the server's operating status data and dynamically calculate the load priority of each server; A dynamic adjustment unit is used to dynamically adjust the task allocation plan of the server according to the load priority calculation result, combined with the computing resource utilization efficiency and the fluctuation of network traffic; The identification and prediction unit is used to apply the dynamically adjusted task allocation scheme and combine the task priority model and user behavior prediction to predict and identify the sudden load demand results; A pre-allocation unit, used to dynamically adjust pre-allocated resources to meet the burst load demand according to the burst load demand result; The dynamic isolation unit is used to identify load pressure based on the server's operating status data and dynamically isolate resource allocation for critical tasks.
Citation Information
Cited By
Financial marketing SAAS platform based on DeepSeek
CN120198084A
Real-time task scheduling optimization method, device and system for FreeRTOS
CN120256063A
Resource adjustment method, electronic device, storage medium and program product
CN120711017A
Server cluster scheduling method based on dynamic load balancing
CN120723480A
Server task allocation method and device, electronic equipment and storage medium
CN120762919A