Comprehensive current limiting method based on load balancing

By adopting a comprehensive current limiting method based on load balancing in the server system, combining multi-level, distributed and adaptive current limiting strategies, the problem that a single current limiting method is difficult to adapt to complex business needs is solved, and more flexible and effective flow control is achieved, and system stability and scalability are improved.

CN119052245BActive Publication Date: 2025-03-04CHINA UNICOM ONLINE INFORMATION TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411555599.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-03-04
Estimated Expiration
2044-11-04

AI Technical Summary

Technical Problem

In the prior art, a single flow restriction method is difficult to adapt to complex business needs, and cannot effectively control different traffic patterns and emergencies, resulting in service denial.

Method used

The comprehensive current limiting method based on load balancing is adopted. By obtaining the current limiting state of multiple backend servers, a combination of multi-level current limiting strategies, distributed current limiting strategies and adaptive current limiting strategies are used to perform comprehensive current limiting control on the backend server.

Benefits of technology

More flexible and effective flow control is achieved, and a complete flow limiting system is formed, which improves the stability and scalability of the system, adapts to different traffic modes and emergencies, and avoids service rejection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119052245B_ABST
    Figure CN119052245B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of communication technology, and specifically discloses a comprehensive current limiting method based on load balancing. By using load balancing or distributed services, multiple request information can be evenly distributed to multiple back-end servers, which ensures that each back-end server can process a part of the requests, and can avoid a single back-end server becoming a bottleneck due to excessive load, thereby improving the processing capacity of the entire system; by obtaining the current limiting status of multiple back-end servers, and combining and applying multi-level current limiting strategies, distributed current limiting strategies and adaptive current limiting strategies according to the current limiting status, it is possible to control the flow more flexibly and effectively, and a complete current limiting system can be formed to improve the stability and scalability of the system, and can adapt to different traffic patterns and emergencies, so as to avoid the inability to effectively control the flow in certain circumstances, resulting in service rejection.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a comprehensive current limiting method based on load balancing. Background Art

[0002] The server-side system is the cornerstone of the entire network application architecture. They are not only responsible for storing and processing massive amounts of data, but also provide real-time analysis and decision support to ensure that users can get a fast and reliable service experience. When the number and frequency of user requests exceed the maximum carrying capacity of the system design, the system may face a series of problems, including but not limited to extended response time, service interruption, data loss, or even complete downtime. These problems will have a negative impact on the user experience and may even lead to business losses in serious cases. In order to prevent and alleviate these problems, the existing technology adopts the "current limiting" method to intelligently control the number of requests entering the system, such as: fixed window current limiting algorithm, sliding window current limiting algorithm, to adapt to the current load status of the system. However, in actual applications, a single current limiting method is often difficult to meet complex business needs. Only a single current limiting strategy is used for current limiting, which lacks flexibility. A single "current limiting" strategy cannot adapt to different traffic patterns and emergencies, resulting in the inability to effectively control traffic in some cases, leading to service denial. Summary of the invention

[0003] The present invention aims to provide a comprehensive current limiting method based on load balancing to solve the deficiencies in the prior art. The technical problem to be solved by the present invention is achieved through the following technical solutions.

[0004] The present invention provides a comprehensive current limiting method based on load balancing, the method comprising:

[0005] Get multiple request information based on load balancing or distributed services;

[0006] Distribute multiple request information evenly to multiple backend servers;

[0007] Obtain the current limiting status of multiple backend servers, and obtain the corresponding current limiting strategy according to the current limiting status, wherein the current limiting strategy includes a multi-level current limiting strategy, a distributed current limiting strategy, and an adaptive current limiting strategy;

[0008] Based on the current limiting strategy, comprehensive current limiting control is performed on the corresponding back-end server.

[0009] In an optional implementation manner, after the step of uniformly distributing the multiple request information to the multiple backend servers, the following steps are included:

[0010] Based on the token bucket current limiting algorithm, the upper limit flow control is set on each backend server to process the number of request information and the number of tokens in the token bucket per second;

[0011] Get the current limiting status of each backend server based on the number of requests and the number of tokens, where each backend server uses local cache single-machine current limiting;

[0012] Perform current limiting control on each backend server according to the current limiting status.

[0013] In an optional implementation manner, the step of performing current limiting control on each backend server according to the current limiting state includes:

[0014] Get any number of identification IDs corresponding to the number of requests;

[0015] Determine whether any identification IDs are the same;

[0016] If any of the identification IDs are the same, determine whether the number of requests corresponding to the identification ID exceeds a preset number;

[0017] If the number of requests corresponding to the identification ID does not exceed the preset number, the current limiting rule will not be triggered;

[0018] If the number of requests corresponding to the identification ID exceeds the preset number, the current limiting rule is triggered;

[0019] In an optional implementation, the identification ID includes an IP address and a user ID.

[0020] In an optional implementation, the step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0021] Based on the multi-level current limiting strategy, a comprehensive current limiting control is performed on the corresponding back-end server, which includes the following steps:

[0022] Based on a token bucket or leaky bucket algorithm, controlling the request processing capability of each application program at the application layer of the backend server;

[0023] Based on load balancing or firewall, flow limiting control is performed on the network layer of the backend server based on the identification ID.

[0024] In an optional implementation, the step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0025] Based on the distributed current limiting strategy, comprehensive current limiting control is performed on the corresponding backend server, which includes the following steps:

[0026] Based on the distributed token bucket algorithm, the status of the token bucket is shared on multiple backend servers;

[0027] The overall request rate of multiple backend servers is controlled according to the status of the token bucket to achieve distributed current limiting.

[0028] In an optional implementation, the step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0029] Based on the adaptive current limiting strategy, comprehensive current limiting control is performed on the corresponding backend server, which includes the following steps:

[0030] Get the real-time load quantity and business demand of each backend server;

[0031] The corresponding current limiting parameters are dynamically adjusted according to the real-time load quantity and business needs, and the backend server is controlled by the current limiting parameters after the adjustment.

[0032] In an optional implementation, the step of dynamically adjusting the corresponding current limiting parameters according to the real-time load quantity and business requirements, and performing current limiting control on the back-end server according to the adjusted current limiting parameters includes:

[0033] Get resource usage based on real-time load quantity;

[0034] Obtain business concurrency based on business needs within a preset time period;

[0035] Dynamically adjust the current limiting threshold based on resource utilization and business concurrency;

[0036] Get the current usage flow based on real-time load quantity and business needs;

[0037] Calculate future traffic trends based on machine learning algorithms, and generate predictions based on future traffic trends to adjust traffic limiting strategies;

[0038] Adjust the current limiting strategy and current limiting parameters according to the prediction.

[0039] In an optional implementation, the step of dynamically adjusting the current limiting threshold according to resource utilization and business concurrency includes:

[0040] Determine whether the resource usage rate is greater than a preset value;

[0041] If the resource usage rate is greater than a preset value, a reduction threshold value corresponding to the resource usage rate is obtained, and the current limiting threshold value of the backend server is reduced according to the reduction threshold value;

[0042] If the resource usage rate is not greater than the preset value, obtain the rising threshold value corresponding to the resource usage rate, and increase the current limiting threshold value of the backend server according to the rising threshold value;

[0043] Determine whether the business concurrency volume increases within a preset time period and whether the increase amount meets the preset increase amount;

[0044] If the business concurrency volume increases within the preset time period and the increase amount meets the preset increase amount, the current limiting threshold is increased according to the preset increase amount;

[0045] If the business concurrency does not increase within the preset time period or the increase amount does not meet the increase preset amount, determine whether the business concurrency decreases within the preset time period and whether the decrease amount meets the decrease preset amount;

[0046] If the business concurrency decreases within a preset time period and the decrease meets the preset decrease amount, the current limiting threshold is lowered according to the preset decrease amount.

[0047] In an optional implementation, the step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0048] Obtain any identification ID corresponding to the request information received by the backend server;

[0049] The number of requests of a single identification ID that meets the preset conditions among any identification IDs is limited within a preset time period, so as to limit the flow of the single identification ID that meets the preset conditions.

[0050] The beneficial effects of the present invention are:

[0051] The present invention uses load balancing or distributed services to evenly distribute multiple request information to multiple back-end servers, which ensures that each back-end server can process a part of the requests, and can avoid a single back-end server becoming a bottleneck due to excessive load, thereby improving the processing capacity of the entire system; by obtaining the current limiting status of multiple back-end servers and combining and applying multi-level current limiting strategies, distributed current limiting strategies and adaptive current limiting strategies according to the current limiting status, it is possible to control the flow more flexibly and effectively, and a complete current limiting system can be formed to improve the stability and scalability of the system, and can adapt to different flow patterns and emergencies, avoiding the inability to effectively control the flow in certain circumstances, resulting in service denial. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] Figure 1 It is a flow chart of steps of an embodiment of a comprehensive current limiting method based on load balancing of the present invention;

[0053] Figure 2 is a flow chart of steps of another embodiment of a comprehensive current limiting method based on load balancing of the present invention; DETAILED DESCRIPTION

[0054] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. Figure 1 , Figure 2The present invention is described in detail with reference to embodiments.

[0055] The present invention discloses a comprehensive current limiting method based on load balancing, the method comprising:

[0056] S1. Obtain multiple request information based on load balancing or distributed services;

[0057] S2, evenly distribute multiple request information to multiple backend servers;

[0058] S3. Obtain the current limiting status of multiple backend servers, and obtain the corresponding current limiting strategy according to the current limiting status, wherein the current limiting strategy includes a multi-level current limiting strategy, a distributed current limiting strategy, and an adaptive current limiting strategy;

[0059] S4. Perform comprehensive current limiting control on the corresponding backend server based on the current limiting strategy.

[0060] As described in the above steps S1-S4, the present invention uses load balancing or distributed services to evenly distribute multiple request information to multiple back-end servers, which ensures that each back-end server can process a part of the requests, and can avoid a single back-end server becoming a bottleneck due to excessive load, thereby improving the processing capacity of the entire system; by obtaining the current limiting status of multiple back-end servers, and combining and applying multi-level current limiting strategies, distributed current limiting strategies and adaptive current limiting strategies according to the current limiting status, it is possible to control the flow more flexibly and effectively, and form a complete current limiting system to improve the stability and scalability of the system, adapt to different traffic patterns and emergencies, and avoid the inability to effectively control the flow in certain situations, resulting in service denial.

[0061] In the above, load balancing refers to the distribution of tasks (i.e. request information) to multiple operating units for execution, such as Web servers, FTP servers, enterprise key application servers and other mission-critical servers, so as to jointly complete the work tasks;

[0062] In the above, rate limiting is a technology that controls the access rate of data or services, which is usually used to prevent abuse, protect the system from overload and attack, and ensure service quality.

[0063] In one embodiment, after the step S2 of uniformly distributing the plurality of request information to the plurality of backend servers, the following steps are included:

[0064] S21, based on the token bucket current limiting algorithm, the number of requests for request information processed per second and the number of tokens in the token bucket are controlled by the upper limit flow on each backend server;

[0065] S22. Obtain the current limiting status of each backend server according to the number of requests and the number of tokens, wherein each backend server adopts the local cache single machine current limiting;

[0066] S23. Perform current limiting control on each backend server according to the current limiting status.

[0067] As described in the above steps S21-S23, the current limiting state of the backend server can be maintained based on the token bucket current limiting algorithm, thereby realizing the logic of local cache single-machine current limiting, thereby effectively controlling the load of each backend server.

[0068] In one embodiment, the step S23 of performing current limiting control on each backend server according to the current limiting state includes:

[0069] S231, obtaining any identification ID corresponding to the number of requests;

[0070] S232, determining whether any identification IDs are the same;

[0071] S233, if any of the identification IDs are the same, determine whether the number of requests corresponding to the identification ID exceeds a preset number;

[0072] S234. If the number of requests corresponding to the identification ID does not exceed the preset number, the current limiting rule is not triggered;

[0073] S235. If the number of requests corresponding to the identification ID exceeds the preset number, the current limiting rule is triggered;

[0074] As described in the above steps S231-S235, for a single IP address and user ID, this embodiment can further refine the control strategy to prevent excessive requests from certain user IDs or IP addresses from occupying resources. Specifically, it can first determine whether the number of multiple requests is from the same user ID or user ID. If so, it can be determined whether the number of requests exceeds the preset number. If it exceeds, the current limiting rule is triggered to implement current limiting control. It should be noted that the current limiting rule can be defined according to needs, and is not uniquely limited here.

[0075] In one embodiment, the step S4 of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0076] S41, performing comprehensive current limiting control on the corresponding backend server based on the multi-level current limiting strategy, which includes the following steps:

[0077] S411, based on a token bucket or leaky bucket algorithm, controlling the request processing capability of each application program at the application layer of the backend server;

[0078] S412: Based on load balancing or firewall, current limiting control is performed on the network layer of the backend server based on the identification ID.

[0079] As described in the above steps S41-S412, different current limiting strategies can be applied at different levels to more effectively control request traffic. Specifically, the present invention limits the flow at the application layer, implements a token bucket or leaky bucket algorithm on the application server, controls the request processing capability of each application instance, and limits the flow at the network layer, by implementing IP or user ID-based current limiting on a load balancing or firewall to prevent malicious attacks or traffic peaks.

[0080] In one embodiment, the step S4 of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0081] S44, performing comprehensive current limiting control on the corresponding backend server based on the distributed current limiting strategy, which includes the following steps:

[0082] S441. Based on the distributed token bucket algorithm, the status of the token bucket is shared on multiple backend servers;

[0083] S442. Control the overall request rate of multiple backend servers according to the status of the token bucket to achieve distributed current limiting.

[0084] As described in the above steps S44-S442, in a distributed system, the current limiting strategy of a single server may not meet the global current limiting requirements. Therefore, it is necessary to implement distributed current limiting across multiple backend servers. The present invention uses a distributed token bucket to share the status of the token bucket on multiple backend servers to ensure global request rate control.

[0085] In one embodiment, the step S4 of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0086] S47: Performing comprehensive current limiting control on the corresponding backend server based on the adaptive current limiting strategy, including the following steps:

[0087] S471. Obtain the real-time load quantity and business demand of each backend server;

[0088] S472. Dynamically adjust the corresponding current limiting parameters according to the real-time load quantity and business needs, and perform current limiting control on the back-end server according to the adjusted current limiting parameters.

[0089] As described in the above steps S47-S472, the flow limiting parameters can be dynamically adjusted according to the real-time load and business needs of the backend server, so that different traffic patterns can be responded to more flexibly.

[0090] In one embodiment, the step S49 of dynamically adjusting the corresponding current limiting parameters according to the real-time load quantity and business demand, and performing current limiting control on the backend server according to the adjusted current limiting parameters includes:

[0091] S491, obtaining resource utilization rate according to the real-time load quantity;

[0092] S492. Obtaining concurrent business volume according to business requirements within a preset time period;

[0093] S493, dynamically adjust the current limiting threshold according to resource utilization and business concurrency;

[0094] S494, obtaining the current usage flow according to the real-time load quantity and business requirements;

[0095] S495, calculating the future traffic trend based on the machine learning algorithm, and generating a prediction and adjusting the flow limiting strategy according to the future traffic trend;

[0096] S496. Adjust the current limiting parameters according to the prediction and current limiting strategy.

[0097] As described in the above steps S491-S496, the present invention uses load-aware current limiting to monitor system resource utilization (such as CPU, memory, and disk IO), and dynamically adjusts the current limiting threshold according to resource usage. At the same time, it uses traffic prediction current limiting, uses machine learning algorithms to predict future traffic trends, and adjusts the current limiting strategy in advance to avoid system overload during traffic peaks.

[0098] In one embodiment, the step S493 of dynamically adjusting the current limiting threshold according to the resource utilization rate and the business concurrency includes:

[0099] S4931, determining whether the resource usage rate is greater than a preset value;

[0100] S4932: If the resource usage rate is greater than a preset value, obtain a reduction threshold value corresponding to the resource usage rate, and reduce the current limiting threshold value of the backend server according to the reduction threshold value;

[0101] S4933. If the resource usage rate is not greater than the preset value, obtain a rising threshold value corresponding to the resource usage rate, and increase the current limiting threshold value of the backend server according to the rising threshold value;

[0102] S4934, determining whether the business concurrency volume increases within a preset time period and whether the increase amount meets the preset increase amount;

[0103] S4935. If the concurrent volume of services increases within a preset time period and the increase amount meets the preset increase amount, the current limiting threshold is increased according to the preset increase amount;

[0104] S4936. If the concurrent business volume does not increase within the preset time period or the increase amount does not meet the preset increase amount, determine whether the concurrent business volume decreases within the preset time period and the decrease amount meets the preset decrease amount;

[0105] S4937. If the business concurrency volume decreases within the preset time period and the decrease amount meets the preset decrease amount, the current limiting threshold is reduced according to the preset decrease amount.

[0106] As described in the above steps S4931-S4937, the current limiting parameters can be dynamically adjusted according to the actual load of each back-end server and the concurrent business volume within a fixed time, so that different business needs can be responded to more flexibly. For example, if the CPU or memory usage of a back-end server is too high, the current limiting threshold of the back-end server is lowered to reduce the request processing volume of the back-end server. On the contrary, if the resource usage of a back-end server is low, the current limiting threshold of the back-end server is increased to increase the request processing volume of the back-end server. For another example, if the concurrent business volume of the back-end server increases significantly within a fixed time, the current limiting threshold of the back-end server is increased. On the contrary, if the concurrent business volume within a fixed time decreases significantly, the current limiting threshold of the back-end server is lowered. In this way, the load of each server can be effectively controlled, and the overall stability and scalability of multiple back-end servers can be improved.

[0107] In one embodiment, the step S4 of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes:

[0108] S410, obtaining any identification ID corresponding to the request information received by the backend server;

[0109] S411. Limit the number of requests of a single identification ID that meets preset conditions among any identification IDs within a preset time period, so as to limit the flow of the single identification ID that meets the preset conditions.

[0110] As described in the above steps S410-S411, different flow limiting dimensions, such as IP address, user ID, service interface, etc., can be combined to achieve more fine-grained control. For example, the present invention uses IP flow limiting to limit the number of requests of a single IP address within a certain period of time to prevent DDoS (Distributed Denial of Service) attacks, and uses user ID flow limiting to limit the flow for each user ID to prevent malicious users from occupying too many resources.

[0111] It should be noted that the various embodiments described above can be carried out simultaneously, separately or in combination, that is, in addition to using multi-level current limiting strategies, distributed current limiting strategies, adaptive current limiting strategies and multi-dimensional current limiting strategies (described in steps S410-S411), the number of requests from different back-end servers can be evenly distributed through load balancing, and comprehensive current limiting can be performed based on local cache single-machine current limiting, current limiting for IP and user ID, and dynamic adjustment of current limiting parameters. Through the application of these comprehensive strategies, a robust, flexible and scalable current limiting system can be built to ensure that the system can remain stable and efficient in the face of various complex scenarios.

[0112] It should be noted that the above detailed descriptions are exemplary and are intended to provide further explanation of the present application. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those of ordinary skill in the art to which the present application belongs.

[0113] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present application. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should also be understood that when the terms "comprise" and / or "include" are used in this specification, it indicates the presence of features, steps, operations, devices, components and / or combinations thereof.

[0114] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein.

[0115] In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units that are not explicitly listed or inherent to these processes, methods, products, or apparatuses.

[0116] For ease of description, spatially relative terms, such as "above", "above", "on the upper surface of", "above", etc., may be used herein to describe the spatial positional relationship between a device or feature and other devices or features as shown in the figure. It should be understood that spatially relative terms are intended to include different orientations of the device in use or operation in addition to the orientation described in the figure. For example, if the device in the accompanying drawings is inverted, the device described as "above other devices or structures" or "above other devices or structures" will be positioned as "below other devices or structures" or "below other devices or structures". Thus, the exemplary term "above" may include both "above" and "below". The device may also be positioned in other different ways, such as rotated 90 degrees or in other orientations, and the spatially relative descriptions used herein are interpreted accordingly.

[0117] In the above detailed description, reference is made to the accompanying drawings, which form a part of this document. In the accompanying drawings, similar symbols typically identify similar components unless the context indicates otherwise. The illustrated embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be used, and other changes may be made, without departing from the spirit or scope of the subject matter presented herein.

[0118] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A comprehensive current limiting method based on load balancing, characterized in that: The method comprises: Get multiple request information based on load balancing or distributed services; Distribute multiple request information evenly to multiple backend servers; Obtain the current limiting status of multiple backend servers, and obtain the corresponding current limiting strategy according to the current limiting status, wherein the current limiting strategy includes a multi-level current limiting strategy, a distributed current limiting strategy, and an adaptive current limiting strategy; Based on the current limiting strategy, the corresponding backend server is subjected to comprehensive current limiting control; wherein, After the step of evenly distributing the multiple request information to the multiple backend servers, based on the token bucket current limiting algorithm, the number of requests for processing the request information per second and the number of tokens in the token bucket are controlled at each backend server; Get the current limiting status of each backend server based on the number of requests and the number of tokens, where each backend server uses local cache single-machine current limiting; Perform current limiting control on each backend server according to the current limiting status; Get any number of identification IDs corresponding to the number of requests; Determine whether any identification IDs are the same; If any of the identification IDs are the same, determine whether the number of requests corresponding to the identification ID exceeds a preset number; If the number of requests corresponding to the identification ID does not exceed the preset number, the current limiting rule will not be triggered; If the number of requests corresponding to the identification ID exceeds the preset number, the current limiting rule is triggered.

2. The comprehensive current limiting method based on load balancing according to claim 1 is characterized in that: The identification ID includes an IP address and a user ID.

3. The comprehensive current limiting method based on load balancing according to claim 1 is characterized in that: The step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes: Based on the multi-level current limiting strategy, a comprehensive current limiting control is performed on the corresponding back-end server, which includes the following steps: Based on a token bucket or leaky bucket algorithm, controlling the request processing capability of each application program at the application layer of the backend server; Based on load balancing or firewall, flow limiting control is performed on the network layer of the backend server based on the identification ID.

4. The comprehensive current limiting method based on load balancing according to claim 1 is characterized in that: The step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes: Based on the distributed current limiting strategy, comprehensive current limiting control is performed on the corresponding backend server, which includes the following steps: Based on the distributed token bucket algorithm, the status of the token bucket is shared on multiple backend servers; The overall request rate of multiple backend servers is controlled according to the status of the token bucket to achieve distributed current limiting.

5. The comprehensive current limiting method based on load balancing according to claim 1 is characterized in that: The step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes: Based on the adaptive current limiting strategy, comprehensive current limiting control is performed on the corresponding backend server, which includes the following steps: Get the real-time load quantity and business demand of each backend server; The corresponding current limiting parameters are dynamically adjusted according to the real-time load quantity and business needs, and the backend server is controlled by the current limiting parameters after the adjustment.

6. The comprehensive current limiting method based on load balancing according to claim 5 is characterized in that: The step of dynamically adjusting the corresponding current limiting parameters according to the real-time load quantity and business requirements, and performing current limiting control on the back-end server according to the adjusted current limiting parameters includes: Get resource usage based on real-time load quantity; Obtain business concurrency based on business needs within a preset time period; Dynamically adjust the current limiting threshold based on resource utilization and business concurrency; Get the current usage flow based on real-time load quantity and business needs; Calculate future traffic trends based on machine learning algorithms, and generate predictions based on future traffic trends to adjust traffic limiting strategies; Adjust the current limiting strategy and current limiting parameters according to the prediction.

7. The comprehensive current limiting method based on load balancing according to claim 6 is characterized in that: The step of dynamically adjusting the current limiting threshold according to the resource utilization rate and the business concurrency includes: Determine whether the resource usage rate is greater than a preset value; If the resource usage rate is greater than a preset value, a reduction threshold value corresponding to the resource usage rate is obtained, and the current limiting threshold value of the backend server is reduced according to the reduction threshold value; If the resource usage rate is not greater than the preset value, obtain the rising threshold value corresponding to the resource usage rate, and increase the current limiting threshold value of the backend server according to the rising threshold value; Determine whether the business concurrency volume increases within a preset time period and whether the increase amount meets the preset increase amount; If the business concurrency volume increases within the preset time period and the increase amount meets the preset increase amount, the current limiting threshold is increased according to the preset increase amount; If the business concurrency does not increase within the preset time period or the increase amount does not meet the increase preset amount, determine whether the business concurrency decreases within the preset time period and whether the decrease amount meets the decrease preset amount; If the business concurrency decreases within a preset time period and the decrease meets the preset decrease amount, the current limiting threshold is lowered according to the preset decrease amount.

8. The comprehensive current limiting method based on load balancing according to claim 1 is characterized in that: The step of performing comprehensive current limiting control on the corresponding backend server based on the current limiting strategy includes: Obtain any identification ID corresponding to the request information received by the backend server; The number of requests of a single identification ID that meets the preset conditions among any identification IDs is limited within a preset time period, so as to limit the flow of the single identification ID that meets the preset conditions.

Citation Information

Patent Citations

  • Event-based cloud network service scheduling method and device

    CN110677274A

  • Dynamic load balancing method based on data analysis

    CN117478679A