Routing processing method and device for data traffic, equipment, medium and program product

By collecting server status data and calculating load weight values, the problem of traditional load balancing devices being unable to perceive the health status of the application layer is solved, enabling dynamic traffic routing and ensuring business continuity and improved resource utilization.

CN122053500APending Publication Date: 2026-05-15INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
INDUSTRIAL AND COMMERCIAL BANK OF CHINA
Filing Date
2026-02-05
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Traditional load balancing devices cannot detect the health status of the server-side application layer in real time, resulting in traffic being allocated to abnormal servers, affecting business continuity and resource utilization.

Method used

By collecting server status data, calculating load weight values ​​based on operational data and preset weight allocation rules, and sending them to the load balancing device through a standardized network communication protocol, traffic routing is dynamically adjusted.

Benefits of technology

It enables real-time awareness of the health status of the server-side application layer, avoids traffic allocation to abnormal servers, ensures business continuity, and improves resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122053500A_ABST
    Figure CN122053500A_ABST
Patent Text Reader

Abstract

The invention provides a data traffic routing processing method and device, equipment, a medium and a program product, and relates to the field of financial science and technology. The method comprises the following steps: acquiring first load balancing strategy identifiers and operation data corresponding to a plurality of servers; determining a corresponding load weight value based on the operation data corresponding to each server and a preset weight distribution rule; and sending the load weight value and the first load balancing strategy identifier to the load balancing equipment, so that the load balancing equipment performs flow routing distribution based on the corresponding load weight value and the first load balancing strategy identifier. According to the method, the state data of the server is obtained, and the load weight value is generated based on the operation data so as to reflect the current load capacity of the server; the corresponding load weight value is sent to the load balancing equipment through the standardized network communication protocol, so that the load balancing equipment can preferentially guide a request to a server with abundant resources and a healthier state, the influence of an abnormal server on a service is avoided, and the service continuity is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of financial technology, and in particular to a method, apparatus, device, medium, and program product for routing and processing data traffic. Background Technology

[0002] In modern distributed systems, high-concurrency and high-availability business scenarios are common, such as financial transaction systems, e-commerce platforms, and cloud computing services. These systems typically deploy multiple servers to support massive user requests, and client traffic needs to be dynamically distributed to the backend through load balancing devices to achieve balanced resource utilization and system stability.

[0003] However, traditional load balancers allocate traffic based solely on network or transport layer connection status, failing to perceive the operational status of server-side applications. For instance, when a server experiences database connection failures, critical process crashes, insufficient disk space, or incompatible application versions, its actual business processing capacity is severely compromised despite a normal network connection to the load balancer. In such cases, traditional load balancers may still allocate a large number of requests to the server experiencing these issues, leading to service response failures, performance degradation, or even cascading system failures. Furthermore, as business complexity increases, server health involves multi-dimensional metrics, making it difficult for traditional methods to comprehensively assess these metrics and dynamically adjust traffic allocation strategies.

[0004] Therefore, there is an urgent need in distributed systems for a technical solution that can perceive the health status of the server application layer in real time and dynamically adjust data traffic based on multi-dimensional indicators to avoid traffic being allocated to abnormal locations, ensure business continuity, and improve the resource utilization and stability of distributed systems. Summary of the Invention

[0005] This application provides a data traffic routing processing method, apparatus, device, medium, and program product to solve the technical problem of difficulty in achieving dynamic and accurate allocation of business traffic.

[0006] Firstly, this application provides a method for routing data traffic, comprising:

[0007] Collect status data from multiple servers, including the first load balancing policy identifier and running data for each server.

[0008] Based on the operating data of each server and the preset weight allocation rules, the load weight value of each server is determined; the load weight value is positively correlated with the amount of available resources corresponding to the server.

[0009] The load weight value and the first load balancing policy identifier of each server are sent to the load balancing device so that the load balancing device can perform traffic routing and allocation based on the load weight value and the first load balancing policy identifier of each server.

[0010] In one possible implementation, the method further includes:

[0011] The registration request information corresponding to the load balancing device is obtained through a standardized network communication protocol. The registration request information includes the server addresses, server ports, and second load balancing policy identifiers of the multiple servers managed by the load balancing device.

[0012] In response to the registration request of the load balancer, the load balancer is registered based on the server address, server port and second load balancing policy identifier of the multiple servers.

[0013] In one possible implementation, the operational data includes resource utilization, the deployment of a corresponding application on each server, and the determination of the load weight value for each server based on the operational data for each server and a preset weight allocation rule, including:

[0014] For any of the multiple servers, if the server's corresponding running data does not contain the target running process information of the application, and / or the resource utilization exceeds the preset resource utilization threshold, then the load weight value of the server will be set to zero.

[0015] In one possible implementation, determining the load weight value for each server based on its corresponding operating data and a preset weight allocation rule further includes:

[0016] For any server, if the server's running data contains information about the running processes of the application and the resource utilization does not exceed the preset resource utilization threshold, the server's resource utilization score is determined based on the preset quantification rules and resource utilization. The resource utilization score is negatively correlated with the server's resource utilization.

[0017] Based on preset quantification rules, application running process information, and the amount of available resources on the server, the available resource score of the server is determined. The available resource score is positively correlated with the amount of available resources on the server.

[0018] The server's load weight value is determined based on the resource utilization score, available resource score, and preset weight allocation rules.

[0019] In one possible implementation, the preset weight allocation rule includes a first weight percentage corresponding to resource utilization and a second weight percentage corresponding to available resources; the server's load weight value is determined based on the resource utilization score, available resource score, and the preset weight allocation rule, including:

[0020] Based on the first and second weighting percentages, the resource utilization score and available resource score are weighted and summed to obtain the server's load weight value.

[0021] In one possible implementation, the method further includes:

[0022] Based on the load weight value of each server and the preset weight ratio, determine the minimum weight value for multiple servers;

[0023] Determine if the load weight value for each server is greater than the minimum weight value; if the load weight value for each server is greater than the minimum weight value, then display the status data on the visualization interface.

[0024] If any load weight value among the load weight values ​​corresponding to each server is less than or equal to the minimum weight value, an alert message will be generated and displayed on the visualization interface.

[0025] Secondly, this application provides a data traffic routing processing apparatus, comprising:

[0026] The data acquisition module is used to collect status data from multiple servers. The status data includes the first load balancing policy identifier and running data for each server.

[0027] The processing module is used to determine the load weight value of each server based on the running data of each server and the preset weight allocation rules; wherein the load weight value is positively correlated with the amount of available resources corresponding to the server.

[0028] The sending module is used to send the load weight value and the first load balancing policy identifier of each server to the load balancing device, so that the load balancing device can perform traffic routing and allocation based on the load weight value and the first load balancing policy identifier of each server.

[0029] In one possible implementation, the processing module is further configured to:

[0030] The registration request information corresponding to the load balancing device is obtained through the standardized network communication protocol. The registration request information includes the server address, server port and second load balancing policy identifier of the multiple servers managed by the load balancing device.

[0031] In response to the registration request of the load balancer, the load balancer is registered based on the server address, server port and second load balancing policy identifier of the multiple servers.

[0032] In one possible implementation, the processing module is further configured to:

[0033] For any of the multiple servers, if the server's corresponding running data does not contain the target running process information of the application, and / or the resource utilization exceeds the preset resource utilization threshold, then the load weight value of the server will be set to zero.

[0034] In one possible implementation, the processing module is further configured to:

[0035] For any server, if the server's running data contains information about the running processes of the application and the resource utilization does not exceed the preset resource utilization threshold, the server's resource utilization score is determined based on the preset quantification rules and resource utilization. The resource utilization score is negatively correlated with the server's resource utilization.

[0036] Based on preset quantification rules, application running process information, and the amount of available resources on the server, the available resource score of the server is determined. The available resource score is positively correlated with the amount of available resources on the server.

[0037] The server's load weight value is determined based on the resource utilization score, available resource score, and preset weight allocation rules.

[0038] In one possible implementation, the processing module is further configured to:

[0039] Based on the first and second weighting percentages, the resource utilization score and available resource score are weighted and summed to obtain the server's load weight value.

[0040] In one possible implementation, the processing module is further configured to:

[0041] Based on the load weight value of each server and the preset weight ratio, determine the minimum weight value for multiple servers;

[0042] Determine if the load weight value for each server is greater than the minimum weight value; if the load weight value for each server is greater than the minimum weight value, then display the status data on the visualization interface.

[0043] If any load weight value among the load weight values ​​corresponding to each server is less than or equal to the minimum weight value, an alert message will be generated and displayed on the visualization interface.

[0044] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor;

[0045] The memory stores the instructions that the computer executes;

[0046] The processor executes computer execution instructions stored in memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.

[0047] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.

[0048] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.

[0049] The data traffic routing processing method, apparatus, device, medium, and program products provided in this application collect the corresponding first load balancing policy identifiers and operating data of multiple servers; based on the operating data of each server and preset weight allocation rules, determine the load weight value of each server; wherein the load weight value is positively correlated with the available resources of the server; and send the load weight value and the first load balancing policy identifier of each server to a load balancing device so that the load balancing device can perform traffic routing allocation based on the load weight value and the first load balancing policy identifier of each server. This application solves the problem that traditional load balancing devices cannot perceive the operating status of the application layer by acquiring server status data in real time and generating dynamic load weight values ​​based on operating data to reflect the current load capacity of the server. At the same time, by sending the load weight value of each server to the load balancing device through a standardized network communication protocol, it can prioritize directing requests to servers with more abundant resources and healthier status, thereby avoiding the impact of abnormal servers on business, improving resource utilization while ensuring business continuity. Attached Figure Description

[0050] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0051] Figure 1 A schematic diagram illustrating a data traffic routing method provided in this application;

[0052] Figure 2 A flowchart illustrating a data traffic routing method provided in this application. Figure 1;

[0053] Figure 3 A flowchart illustrating a data traffic routing method provided in this application. Figure 2 ;

[0054] Figure 4 A schematic diagram of the structure of a data traffic routing processing device provided in this application;

[0055] Figure 5 This is a schematic diagram of the structure of an electronic device provided in this application.

[0056] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation

[0057] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0058] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, storage, use, processing, transmission, provision, disclosure, and application of the relevant data all comply with the relevant laws, regulations, and standards of the relevant countries and regions, have taken necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation access points for users to choose to authorize or refuse.

[0059] Furthermore, the technical solution involved in this application, which involves big data analysis of user information (including but not limited to personal biometrics, identity data, consumption data, asset data, electronic terminal operation data, etc.) and the use of artificial intelligence technology for automated decision-making, and makes decisions that have a significant impact on personal rights based on the results of automated decision-making, provides users with corresponding operation entry points for users to choose to agree to or reject the results of automated decision-making; if the user chooses to reject, the process will proceed to the expert decision-making process.

[0060] It should be noted that the data traffic routing processing method, apparatus, device, medium and program products provided in this application can be used in the field of fintech, or in any field other than fintech. The application field of the data traffic routing processing method, apparatus, device, medium and program products in this application is not limited.

[0061] In modern distributed systems, high-concurrency and high-availability business scenarios are common, such as financial transaction systems, e-commerce platforms, and cloud computing services. These systems typically deploy multiple servers to support massive user requests, and client traffic needs to be dynamically distributed to the backend through load balancing devices to achieve balanced resource utilization and system stability.

[0062] However, traditional load balancers allocate traffic based solely on network or transport layer connection status, failing to perceive the operational status of server-side applications. For instance, when a server experiences database connection failures, critical process crashes, insufficient disk space, or incompatible application versions, its actual business processing capacity is severely compromised despite a normal network connection to the load balancer. In such cases, traditional load balancers may still allocate a large number of requests to the server experiencing these issues, leading to service response failures, performance degradation, or even cascading system failures. Furthermore, as business complexity increases, server health involves multi-dimensional metrics, making it difficult for traditional methods to comprehensively assess these metrics and dynamically adjust traffic allocation strategies.

[0063] Therefore, there is an urgent need in distributed systems for a technical solution that can perceive the health status of the server application layer in real time and dynamically adjust data traffic based on multi-dimensional indicators to avoid traffic being allocated to abnormal locations, ensure business continuity, and improve the resource utilization and stability of distributed systems.

[0064] The data traffic routing processing method, apparatus, device, medium, and program products provided in this application collect the corresponding first load balancing policy identifiers and operating data of multiple servers; based on the operating data of each server and preset weight allocation rules, determine the load weight value of each server; wherein the load weight value is positively correlated with the available resources of the server; and send the load weight value and the first load balancing policy identifier of each server to a load balancing device so that the load balancing device can perform traffic routing allocation based on the load weight value and the first load balancing policy identifier of each server. This application solves the problem that traditional load balancing devices cannot perceive the operating status of the application layer by acquiring server status data in real time and generating dynamic load weight values ​​based on operating data to reflect the current load capacity of the server. At the same time, by sending the load weight value of each server to the load balancing device through a standardized network communication protocol, it can prioritize directing requests to servers with more abundant resources and healthier status, thereby avoiding the impact of abnormal servers on business, improving resource utilization while ensuring business continuity.

[0065] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.

[0066] Figure 1 A schematic diagram illustrating a data traffic routing method provided in this application, such as... Figure 1 As shown, the load balancer 100, server 200, and server management system 300 are connected by communication. The load balancer 100 distributes traffic across multiple servers, while the server management system collects operational data from multiple servers; the number of servers is not limited in this application.

[0067] The server management system 300 collects the operating data and first load policy identifier corresponding to multiple servers 200, calculates the load weight value of each server 200 based on the operating data corresponding to each server 200, and sends the load weight value and first load policy identifier to the load balancing device through a standardized network communication protocol (Server Application State Protocol, abbreviated as SASP), so that the load balancing device can perform traffic routing and allocation based on the load weight value and first load policy identifier.

[0068] The load balancer 100 receives the load weight value and the first load policy identifier sent by the server management system 300 based on the standardized network communication protocol (Server Application State Protocol, or SASP). Based on the first load policy identifier corresponding to each server, it determines the load allocation policy corresponding to each server 200. According to the load weight value corresponding to each server, it updates the load allocation policy so that when allocating services, traffic routing can be performed based on the currently updated load allocation policy.

[0069] Figure 2 A flowchart illustrating a data traffic routing method provided in this application. Figure 1 ,like Figure 1 As shown in the embodiments of this application, the data traffic routing method includes:

[0070] S201. Collect status data from multiple servers. The status data includes the first load balancing policy identifier and operation data corresponding to each server.

[0071] The collected server status data includes information such as CPU, memory, transaction thread pool, and database connection pool. For example, if the server management system monitors servers "Server 1, Server 2, and Server 3", the collected status data for each server would be: "Server 1 - Running data a1, First load balancing strategy identifier A1", "Server 2 - Running data b1, First load balancing strategy identifier B1", and "Server 3 - Running data c1, First load balancing strategy identifier C1". Furthermore, the collected status data is stored in a load information ledger for troubleshooting in case of server failure. To address the problem of traditional traffic allocation schemes relying on single indicators or static configurations and failing to respond to server status changes, leading to allocation lag, this application deploys a server management system on the server to monitor multi-dimensional application-layer indicators such as CPU, memory, critical processes, thread pool, and database connection pool in real time; calculates weight values ​​based on the collected server status data; interacts with the load balancing device via the SASP protocol to dynamically adjust the traffic allocation strategy; and achieves rapid circuit breaking and intelligent traffic allocation for abnormal servers through collaborative optimization of the application and network layers.

[0072] In one possible implementation, the method further includes:

[0073] The registration request information corresponding to the load balancing device is obtained through a standardized network communication protocol. The registration request information includes the server addresses, server ports, and second load balancing policy identifiers of the multiple servers managed by the load balancing device.

[0074] In response to the registration request of the load balancer, the load balancer is registered based on the server address, server port and second load balancing policy identifier of the multiple servers.

[0075] When the load balancer starts up, it obtains the registration request information corresponding to the load balancer through a standardized communication protocol, and registers the load balancer based on the registration request information to determine the servers that the load balancer can control and distribute traffic to.

[0076] For example, the registration request information obtained for the load balancer is: "Server address IP1, server port A, and second load balancing policy identifier A2 for server 1", "Server address IP2, server port B, and second load balancing policy identifier B2 for server 2", and "Server address IP3, server port C, and second load balancing policy identifier C2 for server 3". Then, the server management system responds to the registration request of the load balancer and registers the load balancer according to the obtained registration request information to identify the servers for which status data needs to be collected.

[0077] S202. Based on the operating data of each server and the preset weight allocation rules, determine the load weight value of each server; wherein, the load weight value is positively correlated with the amount of available resources corresponding to the server.

[0078] Understandably, the higher the calculated load weight value for a server, the higher its current business capacity, and thus more business can be allocated to that server for processing. In one possible implementation, the operational data includes resource utilization, and each server deploys a corresponding application. Based on the operational data of each server and preset weight allocation rules, the load weight value for each server is determined. The specific process is as follows:

[0079] For any of the multiple servers, if the server's corresponding running data does not contain the target running process information of the application, and / or the resource utilization exceeds the preset resource utilization threshold, then the load weight value of the server will be set to zero.

[0080] The target running process information corresponding to the application refers to the process executed by the application when processing business; the running process may include data interaction process, result feedback process, etc.; by judging whether the collected running data includes the target running process information corresponding to the application, if the target running process information corresponding to the application is not collected, the application is determined to be faulty.

[0081] Based on the foregoing, the corresponding applications deployed on each server are as follows: Server 1 - Application 1, Server 2 - Application 2, and Server 3 - Application 3. For example, for any of the servers mentioned above, "Server 1," if the running data corresponding to Server 1 does not include the target running process information corresponding to Application 1, then Application 1 is determined to be faulty. In this case, the load weight value corresponding to Server 1 is set to zero to prevent the load balancer from allocating data traffic to Server 1, thus affecting business continuity.

[0082] Resource utilization includes CPU utilization, memory utilization, etc.; preset resource utilization thresholds include CPU utilization threshold and memory utilization threshold; the CPU utilization threshold and memory utilization threshold can be set according to requirements, for example, the CPU utilization threshold can be set to 95% and the memory utilization threshold to 90%.

[0083] Alternatively, if the running data corresponding to server 1 includes the target running process information corresponding to application 1, but at least one of the resource utilization rates exceeds the preset utilization threshold, then the load weight value corresponding to server 1 will be set to zero; for example, the CPU utilization rate of server 1 is 90% and the memory utilization rate is 95%; thus, if the memory utilization rate exceeds the memory utilization threshold, then the load weight value corresponding to server 1 will be set to zero.

[0084] Understandably, if the collected operational data meets any one of the above abnormal conditions, or all of them, the load weight value corresponding to the server will be set to zero to avoid allocating data traffic to the server and affecting business continuity in the event of server or application failure.

[0085] In one possible implementation, Figure 3 A flowchart illustrating a data traffic routing method provided in this application. Figure 2 ,like Figure 3 As shown, based on the operating data of each server and the preset weight allocation rules, the load weight value of each server is determined, which also includes:

[0086] S301. For any server, if the server's running data contains the running process information of the application, and the resource utilization rate does not exceed the preset resource utilization rate threshold, determine the server's resource utilization score based on the preset quantification rules and resource utilization rate. The resource utilization score is negatively correlated with the server's resource utilization rate.

[0087] In conjunction with the foregoing, for example, for any server "Server 2", the running data corresponding to Server 2 includes the running process information of application 2; furthermore, the CPU utilization rate of Server 2 is 80% and the memory utilization rate is 70%. It can be seen that the CPU utilization rate and memory utilization rate of Server 2 both exceed the corresponding CPU utilization rate threshold and memory utilization rate threshold; therefore, it is determined that Server 2 is currently in a healthy running state. Thus, the load weight value of Server 2 can be calculated so that the load balancing device can update the corresponding load balancing strategy based on the real-time load weight value of Server 2.

[0088] S302. Based on preset quantification rules, application running process information, and the available resources of the server, determine the available resource score of the server. The available resource score is positively correlated with the available resources of the server.

[0089] The preset quantification rules refer to the rules for quantifying each indicator data in the collected operational data into a score. Specifically, for resource utilization indicators, the higher the utilization rate, the lower the corresponding score; conversely, for available resource indicators, the higher the availability rate, the higher the corresponding score. For example, resource utilization indicators include CPU utilization and memory utilization; available resource indicators include thread pools and connection pools.

[0090] Table 1 shows an example of the quantization rules for the running data.

[0091]

[0092] Specifically, based on preset quantitative rules, resource utilization rate, and available resource quantity, the server's resource utilization score and available resource score are determined; among them, the calculated resource utilization scores are "CPU load -25 points, memory status -40 points", and the available resource scores are "process health -100 points, thread pool status -40 points, and database connection pool -80 points".

[0093] S303. Determine the server's load weight value based on the resource utilization score, available resource score, and preset weight allocation rules.

[0094] The preset weight allocation rule refers to the weight percentage assigned to different indicator data. Based on "CPU score -25 points, memory score -40 points, process health score -100 points, thread pool score -40 points, database connection pool score -80 points" and the preset weight allocation rule, the load weight value corresponding to server 2 is determined.

[0095] In one possible implementation, the preset weight allocation rule includes a first weight percentage corresponding to resource utilization and a second weight percentage corresponding to available resources; the server's load weight value is determined based on the resource utilization score, available resource score, and the preset weight allocation rule, including:

[0096] Based on the first and second weighting percentages, the resource utilization score and available resource score are weighted and summed to obtain the server's load weight value.

[0097] Based on the foregoing and the preset weight allocation rules, the first weight percentages corresponding to resource utilization are determined as follows: CPU weight percentage 25%, memory weight percentage 20%; the second weight percentages corresponding to available resources are as follows: process health weight percentage 15%, thread pool weight percentage 20%, database connection pool weight percentage 20%. Therefore, the load weight value corresponding to server 2 = CPU score × CPU weight percentage + memory score × memory weight percentage + process health score × process health weight percentage + thread pool score × thread pool weight percentage + database connection pool score × database connection pool weight percentage = 25 × 25% + 40 × 20% + 100 × 15% + 40 × 20% + 80 × 20% = 53.25.

[0098] Similarly, the load weights corresponding to server 1 and server 3 are: server 1 - load weight value "0" and server 3 - load weight value "76".

[0099] S203. Send the load weight value and the first load balancing policy identifier of each server to the load balancing device so that the load balancing device can perform traffic routing and allocation based on the load weight value and the first load balancing policy identifier of each server.

[0100] The SASP communication protocol is used to send the load weight values ​​and first load balancing policies corresponding to each server to the load balancing device. This allows the load balancing device to perform traffic routing and allocation based on the load weight values ​​and first load balancing policy identifiers of each server. Specifically, the load balancing device determines the load balancing policy corresponding to each server based on the received first load balancing policy identifier and updates the corresponding load balancing policy according to the load balancing weight values ​​of each server. For example, based on the load balancing identifiers of each server, the determined load balancing policies are: First load balancing policy identifier A1 - Load balancing policy Aa1 "allocate 50% of data traffic", First load balancing policy identifier B1 - Load balancing policy Bb1 "allocate 20% of data traffic", and First load balancing policy identifier C1 - Load balancing policy Cc1 "allocate 30% of data traffic". Based on the load weight values ​​of each server, the updated load balancing policies for each server are: Load balancing policy Aa1 "no data traffic", Load balancing policy Bb1 "allocate 40% of data traffic", and Load balancing policy Cc1 "allocate 60% of data traffic".

[0101] Data transmission via the SASP communication protocol ensures compatibility and scalability while enabling load balancing devices to respond to server status changes in real time, thereby achieving dynamic routing of data traffic.

[0102] In summary, it can be understood that this application, in the absence of service allocation, can collect and analyze server status data in real time to update the corresponding load balancing strategy, ensuring the real-time performance and accuracy of the load balancing strategy. When service allocation occurs, the latest load balancing strategy can be used for traffic distribution to avoid traffic being allocated to abnormal servers. For example, for server 2, in the absence of service allocation, the aforementioned operations are continuously executed to update the load balancing strategy Bb1; when service allocation occurs, the traffic is distributed based on the latest updated load balancing strategy Bb1, which specifies "allocate 40% of the data traffic".

[0103] In one possible implementation, the method further includes:

[0104] Based on the load weight value of each server and the preset weight ratio, determine the minimum weight value for multiple servers;

[0105] Determine if the load weight value for each server is greater than the minimum weight value; if the load weight value for each server is greater than the minimum weight value, then display the status data on the visualization interface.

[0106] If any load weight value among the load weight values ​​corresponding to each server is less than or equal to the minimum weight value, an alert message will be generated and displayed on the visualization interface.

[0107] The preset weight percentage can be set according to requirements, for example, the weight percentage can be set to 50%.

[0108] For example, the servers monitored by the server management system include "Server 1, Server 2, Server 3, Server 4, and Server 5". The load weight values ​​for each server calculated through the above steps are "Server 1 - 85, Server 2 - 92, Server 3 - 78, Server 4 - 95, Server 5 - 80". The average load weight value is 86. Therefore, the minimum weight value is calculated as: Average Weight × Preset Weight Ratio = 86 × 50% = 43. Comparing the load weight values ​​of each server with the minimum weight value "43", if the load weight value of each server is greater than the minimum weight value, it is determined that there are no abnormalities among all servers, and the status data is displayed on the visualization interface. If the load weight value of any server pair is less than the minimum weight value "43", an alarm message is generated. The alarm message includes the abnormal server, the corresponding status data of the abnormal server, and the load weight value. This alarm message is displayed on the visualization interface to facilitate timely repair of the faulty server by maintenance personnel.

[0109] This embodiment provides a data traffic routing method that collects the corresponding first load balancing policy identifiers and operational data of multiple servers; determines the load weight value of each server based on the operational data of each server and preset weight allocation rules; wherein the load weight value is positively correlated with the available resources of the server; and sends the load weight values ​​and first load balancing policy identifiers of each server to a load balancing device so that the load balancing device can perform traffic routing allocation based on the load weight values ​​and first load balancing policy identifiers of each server. This application solves the problem that traditional load balancing devices cannot perceive the application layer's operational status by acquiring server status data in real time and generating dynamic load weight values ​​based on operational data to reflect the current load capacity of the servers. At the same time, by sending the load weight values ​​of each server to the load balancing device through a standardized network communication protocol, it can prioritize directing requests to servers with more abundant resources and healthier status, thereby avoiding the impact of abnormal servers on business operations, ensuring business continuity while improving resource utilization.

[0110] Figure 4 This application provides a schematic diagram of the structure of a data traffic routing processing device, as shown below. Figure 4As shown, the data traffic routing processing apparatus 400 provided in this application embodiment includes:

[0111] The acquisition module 401 is used to collect status data from multiple servers. The status data includes the first load balancing strategy identifier and running data corresponding to each server.

[0112] The processing module 402 is used to determine the load weight value of each server based on the running data of each server and the preset weight allocation rules; wherein the load weight value is positively correlated with the amount of available resources corresponding to the server.

[0113] The sending module 403 is used to send the load weight value and the first load balancing policy identifier of each server to the load balancing device, so that the load balancing device can perform traffic routing and allocation based on the load weight value and the first load balancing policy identifier of each server.

[0114] In one possible implementation, the processing module 402 is further configured to:

[0115] The registration request information corresponding to the load balancing device is obtained through a standardized network communication protocol. The registration request information includes the server addresses, server ports, and second load balancing policy identifiers of the multiple servers managed by the load balancing device.

[0116] In response to the registration request of the load balancer, the load balancer is registered based on the server address, server port and second load balancing policy identifier of the multiple servers.

[0117] In one possible implementation, the processing module 402 is further configured to:

[0118] For any of the multiple servers, if the server's corresponding running data does not contain the target running process information of the application, and / or the resource utilization exceeds the preset resource utilization threshold, then the load weight value of the server will be set to zero.

[0119] In one possible implementation, the processing module 402 is further configured to:

[0120] For any server, if the server's running data contains information about the running processes of the application and the resource utilization does not exceed the preset resource utilization threshold, the server's resource utilization score is determined based on the preset quantification rules and resource utilization. The resource utilization score is negatively correlated with the server's resource utilization.

[0121] Based on preset quantification rules, application running process information, and the amount of available resources on the server, the available resource score of the server is determined. The available resource score is positively correlated with the amount of available resources on the server.

[0122] The server's load weight value is determined based on the resource utilization score, available resource score, and preset weight allocation rules.

[0123] In one possible implementation, the processing module 402 is further configured to:

[0124] Based on the first and second weighting percentages, the resource utilization score and available resource score are weighted and summed to obtain the server's load weight value.

[0125] In one possible implementation, the processing module 402 is further configured to:

[0126] Based on the load weight value of each server and the preset weight ratio, determine the minimum weight value for multiple servers;

[0127] Determine if the load weight value for each server is greater than the minimum weight value; if the load weight value for each server is greater than the minimum weight value, then display the status data on the visualization interface.

[0128] If any load weight value among the load weight values ​​corresponding to each server is less than or equal to the minimum weight value, an alert message will be generated and displayed on the visualization interface.

[0129] The data traffic routing processing device provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.

[0130] Figure 5 This is a schematic diagram of the structure of an electronic device provided in this application. Figure 5 As shown, the electronic device 50 provided in this embodiment includes at least one processor 501 and a memory 502. Optionally, the device 50 further includes a communication component 503. The processor 501, memory 502, and communication component 503 are connected via a bus 504.

[0131] In a specific implementation, at least one processor 501 executes computer execution instructions stored in memory 502, causing at least one processor 501 to perform the above-described method.

[0132] The specific implementation process of processor 501 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.

[0133] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method; its implementation principle and technical effect are similar and will not be described in detail here.

[0134] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the technical solution of the above method embodiments. Its implementation principle and technical effects are similar, and will not be repeated here.

[0135] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily essential to this application.

[0136] It should be further noted that although the steps in the flowchart are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.

[0137] It should be understood that the above-described device embodiments are merely illustrative, and the device of this application can also be implemented in other ways. For example, the division of units / modules in the above embodiments is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units, modules, or components may be combined, or integrated into another system, or some features may be ignored or not executed.

[0138] Furthermore, unless otherwise specified, the functional units / modules in the various embodiments of this application can be integrated into one unit / module, or each unit / module can exist physically separately, or two or more units / modules can be integrated together. The integrated units / modules described above can be implemented in hardware or as software program modules.

[0139] When integrated units / modules are implemented in hardware, the hardware can be digital circuits, analog circuits, etc. The physical implementation of the hardware structure includes, but is not limited to, transistors, memristors, etc. Unless otherwise specified, the processor can be any suitable hardware processor, such as a CPU, GPU, FPGA, DSP, and ASIC, etc. Unless otherwise specified, the storage unit can be any suitable magnetic or magneto-optical storage medium, such as Resistive Random Access Memory (RRAM), Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Enhanced Dynamic Random Access Memory (EDRAM), High-Bandwidth Memory (HBM), Hybrid Memory Cube (HMC), etc.

[0140] If the integrated unit / module is implemented as a software program module and sold or used as an independent product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.

[0141] In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as the combination of these technical features does not contradict each other, it should be considered within the scope of this specification.

[0142] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the following claims.

[0143] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.

Claims

1. A method for routing data traffic, characterized in that, The method includes: Collect status data from multiple servers, including the first load balancing policy identifier and operation data corresponding to each server; Based on the operating data of each server and the preset weight allocation rules, the load weight value of each server is determined; wherein, the load weight value is positively correlated with the amount of available resources corresponding to the server. The load weight value corresponding to each server and the first load balancing policy identifier are sent to the load balancing device so that the load balancing device can perform traffic routing and allocation based on the load weight value corresponding to each server and the first load balancing policy identifier.

2. The method according to claim 1, characterized in that, The method further includes: The registration request information corresponding to the load balancing device is obtained through a standardized network communication protocol; the registration request information includes the server address, server port and second load balancing strategy identifier corresponding to the multiple servers managed by the load balancing device. In response to the registration request of the load balancing device, the load balancing device is registered based on the server address, server port and second load balancing policy identifier corresponding to the plurality of servers.

3. The method according to claim 2, characterized in that, The operational data includes resource utilization, and the corresponding application deployed on each server. The determination of the load weight value for each server based on the operational data and preset weight allocation rules includes: For any of the plurality of servers, if the running data corresponding to the server does not contain the target running process information corresponding to the application, and / or the resource utilization exceeds a preset resource utilization threshold, then the load weight value corresponding to the server is set to zero.

4. The method according to claim 3, characterized in that, The step of determining the load weight value for each server based on the operating data corresponding to each server and the preset weight allocation rules also includes: For any of the servers, if the running data corresponding to the server contains the running process information corresponding to the application, and the resource utilization rate does not exceed a preset resource utilization rate threshold, the resource utilization score of the server is determined based on the preset quantification rules and the resource utilization rate, and the resource utilization score is negatively correlated with the resource utilization rate of the server. Based on the preset quantification rules, the running process information of the application, and the available resources of the server, the available resource score of the server is determined, and the available resource score is positively correlated with the available resources of the server. The load weight value of the server is determined based on the resource utilization score, the available resource score, and the preset weight allocation rule.

5. The method according to claim 4, characterized in that, The preset weight allocation rule includes a first weight percentage corresponding to resource utilization and a second weight percentage corresponding to available resources; determining the server's load weight value based on the resource utilization score, the available resource score, and the preset weight allocation rule includes: Based on the first weight ratio and the second weight ratio, the resource utilization score and the available resource score are weighted and summed to obtain the load weight value of the server.

6. The method according to claim 1, characterized in that, The method further includes: Based on the load weight value corresponding to each server and the preset weight ratio, determine the minimum weight value corresponding to multiple servers; Determine whether the load weight value corresponding to each server is greater than the minimum weight value; if the load weight value corresponding to each server is greater than the minimum weight value, then display the status data on the visualization interface. If any load weight value among the load weight values ​​corresponding to each server is less than or equal to the minimum weight value, an alert message is generated and displayed on the visualization interface.

7. A data traffic routing processing device, characterized in that, include: The acquisition module is used to collect status data from multiple servers. The status data includes the first load balancing strategy identifier and operation data corresponding to each server. The processing module is used to determine the load weight value of each server based on the running data of each server and the preset weight allocation rules; wherein the load weight value is positively correlated with the amount of available resources corresponding to the server. The sending module is used to send the load weight value corresponding to each server and the first load balancing policy identifier to the load balancing device, so that the load balancing device can perform traffic routing and allocation based on the load weight value corresponding to each server and the first load balancing policy identifier.

8. An electronic device, characterized in that, include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1 to 6.

10. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method of any one of claims 1 to 6.