CN112350953B - Flow limiting method and device, electronic equipment and computer readable storage medium - Google Patents

Flow limiting method and device, electronic equipment and computer readable storage medium Download PDF

Info

Publication number
CN112350953B
CN112350953B CN201910725969.8A CN201910725969A CN112350953B CN 112350953 B CN112350953 B CN 112350953B CN 201910725969 A CN201910725969 A CN 201910725969A CN 112350953 B CN112350953 B CN 112350953B
Authority
CN
China
Prior art keywords
current
tokens
token
token bucket
current limiting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910725969.8A
Other languages
Chinese (zh)
Other versions
CN112350953A (en
Inventor
孙德彪
牛冬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Yidu Huida Education Technology Co ltd
Original Assignee
Beijing Yidu Huida Education Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Yidu Huida Education Technology Co ltd filed Critical Beijing Yidu Huida Education Technology Co ltd
Priority to CN201910725969.8A priority Critical patent/CN112350953B/en
Publication of CN112350953A publication Critical patent/CN112350953A/en
Application granted granted Critical
Publication of CN112350953B publication Critical patent/CN112350953B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket

Abstract

The embodiment of the application provides a flow limiting method and a device thereof, electronic equipment and a computer readable storage medium, wherein a total threshold value of a token bucket for storing tokens in a current limiting time period is determined by determining the current limiting time period of a current limiting service; dynamically adjusting the token adding rate of the token bucket in the current limit time period according to the current limit time period and the total threshold value so as to add tokens into the token bucket according to the token adding rate; when the current limiting service receives the access request in the current limiting time period, judging whether the number of tokens in the current token bucket is less than the number of the access request; if the access request is the concurrent access request, the access request is subjected to current limiting processing, so that the token adding rate is not constant any more, but is closer to the concurrent access request inflow rate, therefore, when the concurrent access request exists, a sufficient number of tokens are in the token bucket for processing the concurrent access request, the user waiting time is reduced, the user experience is improved, the server resources are fully utilized, and the stable operation of the system is ensured.

Description

Flow limiting method and device, electronic equipment and computer readable storage medium
Technical Field
The embodiment of the application relates to the technical field of internet, in particular to a flow limiting method and device, electronic equipment and a computer readable storage medium.
Background
With the development of the internet, more and more people use network services, and servers bear larger and larger request amount. The stability of the server is a basic guarantee that reliable services are provided. The server can be effectively protected by implementing flow limitation on the server, and the server is ensured not to be overloaded, so that the service quality is improved, and the competitiveness of a service provider is enhanced.
The current traffic limiting technology generally adopts a method for limiting the processing request rate, such as a leaky bucket algorithm or a token bucket algorithm, to realize the limitation of the traffic. The token bucket algorithm is a classic network traffic shaping and limiting algorithm, and can smooth network traffic and allow a certain degree of burst traffic. Token bucket algorithms typically inject tokens into a token bucket at a constant rate to prevent server stress from occurring due to bursty traffic.
In the actual use process, when the token bucket algorithm is adopted, the flow inflow rate of the actually occurring sudden flow situation is not constant, and when the token is injected into the token bucket at the constant rate, the normal request of the user is often limited, so that the waiting time of the user is long, and the user experience is poor.
Disclosure of Invention
In view of the above, an object of the present invention is to provide a method and apparatus for limiting a flow, an electronic device and a computer-readable storage medium, which overcome the disadvantages of the prior art.
In one aspect, an embodiment of the present application provides a flow limiting method, including:
determining a current limit time period of a current limit service and a total threshold value of a token bucket for storing tokens in the current limit time period;
dynamically adjusting a token adding rate of the token bucket within the current limit time period according to the current limit time period and the total threshold value, so as to add tokens into the token bucket according to the token adding rate;
when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; and if so, performing current limiting processing on the access request.
Optionally, in any embodiment of the present application, dynamically adjusting a token addition rate of the token bucket within the throttling time period according to the throttling time period and the overall threshold includes:
obtaining i sub-thresholds according to the total threshold, and equally dividing the current limiting time period into i current limiting time slices; and dynamically adjusting the token adding rate of the token bucket in each current limiting time slice according to the i sub-thresholds and the i current limiting time slices.
Optionally, in any embodiment of the present application, obtaining i sub-thresholds according to the total threshold includes: and splitting the total threshold value according to a set token splitting model to obtain i sub-threshold values.
Optionally, in any embodiment of the present application, dynamically adjusting a token addition rate of the token bucket in each of the current-limiting time slices according to the i sub-thresholds and the i current-limiting time slices includes:
setting the number of the tokens added in each current limiting time slice by the token bucket to be one of the sub-threshold values; and determining the token adding rate of the token bucket in each current limiting time slice according to each current limiting time slice and the sub-threshold corresponding to the current limiting time slice.
Optionally, in any embodiment of the application, setting the number of tokens added to each of the current-limiting time slices by the token bucket to be one of the sub-thresholds includes:
and the i sub-threshold values are arranged in a positive sequence from large to small, and the number of the tokens produced by the token bucket in the 1 st to i time slices is set as the 1 st to i sub-threshold values.
Optionally, in any embodiment of the present application, adding tokens to the token bucket according to the token addition rate includes:
and determining the current limiting time slice to which the current time belongs and judging whether the number of tokens added in the current limiting time slice to which the current time belongs by the token bucket reaches a corresponding sub threshold, if not, adding the tokens into the token bucket according to the token adding rate.
Optionally, in any embodiment of the present application, adding tokens to the token bucket according to the token addition rate includes:
and judging whether the number of tokens in the token bucket at the current time is smaller than the total threshold value, if so, adding tokens into the token bucket according to the token adding rate, and if not, stopping adding the tokens.
In another aspect, an embodiment of the present application provides a flow limiting device, including:
the system comprises an initial determining module, a current limiting module and a token bucket, wherein the initial determining module is used for determining a current limiting time period of a current limiting service and a total threshold value of the token bucket for storing tokens in the current limiting time period;
a dynamic adjustment module, configured to dynamically adjust a token addition rate of the token bucket within the current limit time period according to the current limit time period and the total threshold, so as to add tokens to the token bucket according to the token addition rate;
the current limiting processing module is used for judging whether the number of tokens in the token bucket is smaller than the number of the access requests when the current limiting service receives the access requests in the current limiting time period; and if so, performing current limiting processing on the access request.
In another aspect, an embodiment of the present application provides an electronic device, including:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a method as in any one of the embodiments described above.
In a further aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, where the computer program is configured to, when executed by a processor, implement the method as in any one of the above embodiments.
The traffic limiting method and the device, the electronic device and the storage medium of the embodiment dynamically adjust the token adding rate of the token bucket in the current-limiting time period according to the current-limiting time period and the total threshold value, so as to add tokens into the token bucket according to the adjusted token adding rate, thereby enabling the token adding rate to be no longer constant but to be closer to the rate of concurrent access requests flowing into the current-limiting service, thereby being capable of rapidly processing the concurrent access requests, reducing the waiting time of users, improving the user experience, fully utilizing the server resources and ensuring the stable operation of the system.
Drawings
Some specific embodiments of the present application will be described in detail hereinafter by way of illustration and not limitation with reference to the accompanying drawings. The same reference numbers in the drawings identify the same or similar elements or components. Those skilled in the art will appreciate that the drawings are not necessarily drawn to scale. In the drawings:
fig. 1 is a schematic flow chart of a flow limiting method according to an embodiment of the present application.
Fig. 2 is a schematic flow chart of a flow limiting method in the second embodiment of the present application.
Fig. 3 is a schematic structural diagram of a flow rate limiting device according to a third embodiment of the present application.
Fig. 4 is a schematic structural diagram of a flow rate limiting device according to a fourth embodiment of the present application.
Fig. 5 is a schematic structural diagram of an electronic device in the fifth embodiment of the present application.
Fig. 6 is a hardware structure of an electronic device according to a sixth embodiment of the present application.
Detailed Description
It is not necessary for any particular embodiment of the invention to achieve all of the above advantages at the same time.
In order to make those skilled in the art better understand the technical solutions in the embodiments of the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, but not all embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application shall fall within the scope of protection of the embodiments in the present application.
The following further describes specific implementations of embodiments of the present application with reference to the drawings of the embodiments of the present application.
FIG. 1 is a schematic diagram of a flow limiting method according to an embodiment of the present disclosure; as shown in fig. 1, it comprises the following steps:
step S101: a current limit time period for a current limit service and a total threshold for a token bucket to store tokens within the current limit time period are determined.
In this embodiment, a user may set a current limiting time period of the current limiting service and a total threshold for storing tokens in the token bucket according to a requirement of the current limiting service, set a start time of the current limiting, start to perform the flow limiting after the start time is reached, and circularly execute a previous step of the current limiting time period in a next time period after one current limiting time period is ended. If the current limiting time period is set to be 5 seconds and the total threshold is 10, it indicates that only 10 tokens can be stored in the token bucket within 5 seconds at most.
In this embodiment, after the flow restriction is started, the flow restriction time period set by the user and the total threshold for storing tokens in the token bucket are first determined, so that the flow restriction operation is performed according to the flow restriction time period and the total threshold for storing tokens in the token bucket.
It should be noted that the flow limiting method provided in this embodiment may perform flow limiting on any flow limiting service, and is not limited here, for example, flow limiting may be performed on a product for online shopping, and flow limiting may also be performed on online registration activities of an online education platform.
Step S102: and dynamically adjusting the token adding rate of the token bucket in the current limit time period according to the current limit time period and the total threshold value so as to add tokens to the token bucket according to the token adding rate.
In this embodiment, it is considered that if the token addition rate is constant, the number of tokens in the token bucket steadily increases according to the fixed token addition rate. However, the rate of concurrent access requests flowing into the current limiting service is not constant, so that the rate of processing the concurrent access requests is not constant, and the waiting time of a user is long, so that in order to avoid such a situation, the token adding rate is dynamically adjusted according to the total threshold and the current limiting time period, so that the token adding rate is not constant, but is closer to the rate of concurrent access requests flowing into the current limiting service, therefore, when there are concurrent access requests, a sufficient number of tokens are in the token bucket for processing the concurrent access requests, the waiting time of the user is reduced, the user experience is improved, and the server resources are fully utilized, and the stable operation of the system is ensured.
Step S103: when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; and if so, performing current limiting processing on the access request.
In this embodiment, when the current limiting service receives an access request within the current limiting time period, if the number of tokens in the token bucket is greater than or equal to the number of access requests, deleting tokens having the same number as the access requests from the token bucket, and processing the access requests according to normal processing logic; and if the number of the tokens in the token bucket is less than the number of the access requests, not deleting the tokens in the token bucket, and performing flow limiting processing on the access requests. The current limiting processing includes rejecting the access request or processing after the number of tokens in the token bucket is equal to the number of the access request, and a current limiting processing mode can be set according to requirements, which is not limited here.
The flow limiting method provided by the embodiment of the application determines the current limiting time period of the current limiting service and the total threshold value of the token bucket for storing the tokens in the current limiting time period; dynamically adjusting a token adding rate of the token bucket within the current limit time period according to the current limit time period and the total threshold value, so as to add tokens into the token bucket according to the token adding rate; when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; if so, performing flow-limiting processing on the access request, so that the token adding rate is not constant any more, but is closer to the rate of concurrent access requests flowing into the flow-limiting service, therefore, when concurrent access requests exist, a sufficient number of tokens are in the token bucket for processing the concurrent access requests, the waiting time of a user is reduced, the user experience is improved, the server resources are fully utilized, and the stable operation of the system is ensured.
FIG. 2 is a schematic diagram of a flow limiting method according to a second embodiment of the present application; as shown in fig. 2, it comprises the following steps:
step S201, determining a current limiting time period of the current limiting service and a total threshold of the token bucket for storing tokens in the current limiting time period.
In this embodiment, step S201 is similar to step S101, and is not described herein again.
Step S202, obtaining i sub-thresholds according to the total threshold, and dividing the current limiting time period into i current limiting time slices; and dynamically adjusting the token adding rate of the token bucket in each current limiting time slice according to the i sub-thresholds and the i current limiting time slices.
In this embodiment, the total threshold is split to obtain i sub-thresholds, the current limiting time period is equally divided into i current limiting time slices, the current limiting time period is split to obtain the current limiting time slices with the same number as the sub-thresholds, i token adding rates can be obtained according to the i sub-thresholds and the i current limiting time slices, and the dynamic adjustment of the token adding rate in each current limiting time slice is realized, where i is a positive integer. By dynamically adjusting the token adding rate, the token adding rate is not constant any more, and a large number of tokens can be added into the token bucket in a short time, so that when concurrent access requests exist, a sufficient number of tokens are in the token bucket for processing the concurrent access requests, the waiting time of a user is reduced, the user experience is improved, the server resources are fully utilized, and the stable operation of a system is ensured.
In this embodiment, obtaining i sub-thresholds according to the total threshold includes: and splitting the total threshold value according to a set token splitting model to obtain i sub-threshold values. Wherein the token splitting model comprises a complete binary tree model or a binary model.
In this embodiment, dynamically adjusting the token adding rate of the token bucket in each current-limiting time slice according to the i sub-thresholds and the i current-limiting time slices includes: setting the number of the tokens added in each current limiting time slice by the token bucket to be one of the sub-threshold values; and determining the token adding rate of the token bucket in each current limiting time slice according to each current limiting time slice and the sub-threshold value corresponding to the current limiting time slice.
Optionally, if the total threshold is input into the complete binary tree model, the complete binary tree model splits the total threshold according to a data structure algorithm of a complete binary tree to obtain i sub-thresholds. For example, the total threshold is set to 13, 13 inputs are input into a complete binary tree model, and the binary tree model splits 13 according to a data structure algorithm of a complete binary tree to obtain 4 fractional thresholds in total of 1, 2, 4 and 6. If the current-limiting time period is set to be 10 seconds, dividing 10 seconds into 4 current-limiting time slices, each of which is 2.5 seconds, and then randomly setting the first 2.5 seconds, namely setting the number of tokens added by the token bucket to be one of the threshold values between 0 th and 2.5 th seconds, for example, 4, and setting the token adding rate to be 1.6/second; setting the number of the added tokens of the token bucket to be 1 and the token adding rate to be 0.4/s between 2.5 and 5 seconds; setting the number of the added tokens of the token bucket to be 6 and the token adding rate to be 2.4/s between 5 th and 7.5 th seconds; and setting the number of the added tokens of the token bucket to be 2 and the token adding rate to be 0.8 per second between 7.5 and 10 seconds, so that the token adding rates in each current limiting time slice are different, and the dynamic adjustment of the token adding rate is realized.
Optionally, if the total threshold is input into the binary model, the binary model splits the total threshold according to a binary algorithm to obtain i sub-thresholds. When the binary model is used for splitting to obtain non-integers, a rounding algorithm or an integer-taking algorithm can be adopted for processing the integers. For example, the total threshold is set to 13, 13 input binary models are used, the binary models split 13 according to a binary algorithm, and a rounding algorithm can be used to obtain four total fractional thresholds of 1, 2, 3, and 7 or a rounding algorithm can be used to obtain 5 total fractional thresholds of 1, 2, 3, and 6. If the splitting obtains 4 sub-thresholds, the current-limiting time period is equally divided into 4 current-limiting time slices, and if the splitting obtains 5 sub-thresholds, the current-limiting time period is equally divided into 5 current-limiting time slices.
It should be noted that which model is used to split the total threshold is not limited here, as long as the token addition rate can be dynamically adjusted. In addition, when splitting, the total threshold value may be split first, or the current limiting time period may be split first, or both may be split simultaneously, where no limitation is made here.
Optionally, when the sub-threshold of the number of tokens added to each current-limiting time slice by the token bucket is randomly set, if the largest sub-threshold among all the sub-thresholds is set to the current-limiting time slice in the middle of all the current-limiting time slices, when a concurrent access request flows into the current-limiting service, the number of tokens added to the token bucket at the beginning is small, and the speed of processing the access request by the current-limiting service is slow, so that the system pressure of the current-limiting service is too high, and the normal operation of the system is affected, therefore, to avoid this, the i sub-thresholds are arranged in a positive order from large to small, and the number of tokens added to the 1 st to i th time slices by the token bucket is set to be the 1 st to i sub-thresholds. For example, 4 sub-thresholds are arranged in a positive sequence and then are respectively 4, 3, 2 and 1, the number of tokens added into the 1 st current-limiting time slice by the token bucket is set as the 1 st sub-threshold 4, the number of tokens added into the 2 nd current-limiting time slice by the token bucket is set as the 2 nd sub-threshold 3, and so on, so that the token adding rate is continuously decreased, when concurrent access requests flow into the current-limiting service, the number of tokens added into the token bucket is large at the beginning, the access request processing speed of the current-limiting service is high, the system pressure of the current-limiting service can be quickly relieved, and the normal operation of the system is ensured.
And step S203, adding tokens to the token bucket according to the token adding rate.
In this embodiment, tokens are added to the token bucket according to the dynamically adjusted token addition speed, so that the token addition rate is no longer constant, but is closer to the rate at which concurrent access requests flow into the limited flow service, and therefore when there are concurrent access requests, there are a sufficient number of tokens in the token bucket for processing the concurrent access requests, thereby reducing user waiting time, improving user experience, and fully utilizing server resources, and ensuring stable operation of the system.
Optionally, in order to avoid exceeding a sub-threshold set in each current-limiting time slice when a token is added to the token bucket, before adding the token, the current-limiting time slice to which the current time belongs is first determined, and whether the number of tokens added to the current-limiting time slice to which the token bucket belongs reaches a corresponding sub-threshold is determined, if not, the tokens are added to the token bucket according to the token addition rate. And if so, adding the token into the token bucket in the time slice to which the current time belongs, and adding the token into the token bucket by the next current limiting time slice.
Optionally, in a specific implementation scenario, after a previous time slice is completed, a next time slice is started, the step of looping the first time slice continues to add tokens to the token bucket, if the tokens in the token bucket are not consumed in the previous time slice, the number of tokens in the token bucket reaches a total threshold for storing tokens in the token bucket at the next time slice, and at this time, adding tokens to the token bucket again exceeds the total threshold, so to avoid that the number of tokens in the token bucket exceeds the total threshold for storing tokens when adding tokens to the token bucket, first determining whether the number of tokens in the token bucket at the current time is less than the total threshold, and if so, adding tokens to the token bucket according to the token addition rate, if not, the token addition is stopped.
It should be noted that, in order to avoid that the total threshold for storing tokens in the token bucket and the sub-threshold for each throttling time slice are exceeded when tokens are added to the token bucket, it is preferable to determine whether the total threshold for storing tokens in the token bucket has been reached by the tokens stored in the token bucket and whether the number of tokens added to the throttling time slice to which the token bucket belongs at the current time reaches the corresponding sub-threshold when the tokens are added to the token bucket.
Step S204, when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the current token bucket is less than the number of the access request; and if so, performing current limiting processing on the access request.
In this embodiment, step S204 is similar to step S103, and is not described herein again.
Fig. 3 is a schematic structural diagram of a flow rate limiting device according to a third embodiment of the present application. As shown in fig. 3, the apparatus includes:
an initial determining module 301, configured to determine a current limiting time period of a current limiting service and a total threshold of a token bucket storing tokens in the current limiting time period.
In this embodiment, a user may set a current limiting time period of the current limiting service and a total threshold for storing tokens in the token bucket according to a requirement of the current limiting service, set a start time of the current limiting, start to perform the flow limiting after the start time is reached, and circularly execute a previous step of the current limiting time period in a next time period after one current limiting time period is ended. If the current limiting time period is set to be 5 seconds and the total threshold is 10, it indicates that only 10 tokens can be stored in the token bucket within 5 seconds at most.
In this embodiment, after the flow restriction is started, the flow restriction time period set by the user and the total threshold for storing tokens in the token bucket are first determined, so that the flow restriction operation is performed according to the flow restriction time period and the total threshold for storing tokens in the token bucket.
It should be noted that the flow limiting method provided in this embodiment may perform flow limiting on any flow limiting service, and is not limited here, for example, flow limiting may be performed on a product for online shopping, and flow limiting may also be performed on online registration activities of an online education platform.
A dynamic adjustment module 302, configured to dynamically adjust a token addition rate of the token bucket in the current limit time period according to the current limit time period and the total threshold, so as to add tokens to the token bucket according to the token addition rate.
In this embodiment, considering that if the token addition rate is constant, but the rate of concurrent access requests flowing into the limited flow service is not constant, the number of tokens in the token bucket is made to increase slowly, the throttling service is made to be slow in processing access requests, increasing user latency, to avoid such a situation, the token addition rate is dynamically adjusted in accordance with the overall threshold and the throttling time period, such that the token addition rate is not a constant rate, but more closely approaches the rate at which concurrent access requests flow into the limited flow service, so that in the presence of concurrent access requests, the token bucket has enough tokens for processing concurrent access requests, so that the waiting time of a user is reduced, the user experience is improved, the server resources are fully utilized, and the stable operation of the system is ensured.
A current limiting processing module 303, configured to determine, when the current limiting service receives an access request in the current limiting time period, whether the number of tokens in the token bucket is smaller than the number of access requests; and if so, performing current limiting processing on the access request.
In this embodiment, when the current-limiting service receives an access request within the current-limiting time period, if the number of tokens in the token bucket is greater than or equal to the number of the access request, deleting tokens having the same number as the access request from the token bucket, and processing the access request according to normal processing logic; and if the number of the tokens in the token bucket is less than the number of the access requests, not deleting the tokens in the token bucket, and performing flow limiting processing on the access requests. The current limiting processing includes rejecting the access request or processing after the number of tokens in the token bucket is equal to the number of the access request, and a current limiting processing mode can be set according to requirements, which is not limited here.
The flow limiting method provided by the embodiment of the application determines the current limiting time period of the current limiting service and the total threshold value of the token bucket for storing the tokens in the current limiting time period; dynamically adjusting a token adding rate of the token bucket within the current limit time period according to the current limit time period and the total threshold value, so as to add tokens into the token bucket according to the token adding rate; when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; if so, performing flow-limiting processing on the access request, so that the token adding rate is not constant any more, but is closer to the rate of concurrent access requests flowing into the flow-limiting service, therefore, when concurrent access requests exist, a sufficient number of tokens are in the token bucket for processing the concurrent access requests, the waiting time of a user is reduced, the user experience is improved, the server resources are fully utilized, and the stable operation of the system is ensured.
Fig. 4 is a schematic structural diagram of a flow rate limiting device according to a fourth embodiment of the present application. As shown in fig. 4, the apparatus includes:
an initial determining module 401 is configured to determine a current limiting time period of a current limiting service and a total threshold of a token bucket storing tokens in the current limiting time period.
In this embodiment, the initial determining module 401 and the initial determining module 301 are not described herein again.
The splitting adjustment module 402 is configured to obtain i sub-thresholds according to the total threshold, and equally divide the current limiting time period into i current limiting time slices; and dynamically adjusting the token adding rate of the token bucket in each current limiting time slice according to the i sub-thresholds and the i current limiting time slices.
In this embodiment, the total threshold is split to obtain i sub-thresholds, the current limiting time period is equally divided into i current limiting time slices, the current limiting time period is split to obtain the current limiting time slices with the same number as the sub-thresholds, i token adding rates can be obtained according to the i sub-thresholds and the i current limiting time slices, and the dynamic adjustment of the token adding rate in each current limiting time slice is realized, where i is a positive integer. By dynamically adjusting the token adding rate, the token adding rate is not constant any more, and a large number of tokens can be added into the token bucket in a short time, so that when concurrent access requests exist, a sufficient number of tokens are in the token bucket for processing the concurrent access requests, the waiting time of a user is reduced, the user experience is improved, the server resources are fully utilized, and the stable operation of a system is ensured.
In this embodiment, obtaining i sub-thresholds according to the total threshold includes: and splitting the total threshold value according to a set token splitting model to obtain i sub-threshold values. Wherein the token splitting model comprises a complete binary tree model or a binary model.
In this embodiment, dynamically adjusting the token adding rate of the token bucket in each current-limiting time slice according to the i sub-thresholds and the i current-limiting time slices includes: setting the number of the tokens added in each current limiting time slice by the token bucket to be one of the sub-threshold values; and determining the token adding rate of the token bucket in each current limiting time slice according to each current limiting time slice and the sub-threshold corresponding to the current limiting time slice.
Optionally, if the total threshold is input into the complete binary tree model, the complete binary tree model splits the total threshold according to a data structure algorithm of a complete binary tree to obtain i sub-thresholds. For example, the total threshold is set to 13, 13 inputs are input into a complete binary tree model, and the binary tree model splits 13 according to a data structure algorithm of a complete binary tree to obtain 4 fractional thresholds in total of 1, 2, 4 and 6. If the current-limiting time period is set to be 10 seconds, dividing 10 seconds into 4 current-limiting time slices, each of which is 2.5 seconds, and then randomly setting the first 2.5 seconds, namely setting the number of tokens added by the token bucket to be one of the threshold values between 0 th and 2.5 th seconds, for example, 4, and setting the token adding rate to be 1.6/second; setting the number of the added tokens of the token bucket to be 1 and the token adding rate to be 0.4/s between 2.5 and 5 seconds; setting the number of the tokens added by the token bucket to be 6 and the token adding rate to be 2.4/s between 5 th and 7.5 th seconds; and setting the number of the added tokens of the token bucket to be 2 and the token adding rate to be 0.8 per second between 7.5 and 10 seconds, so that the token adding rates in each current limiting time slice are different, and the dynamic adjustment of the token adding rate is realized.
Optionally, if the total threshold is input into the binary model, the binary model splits the total threshold according to a binary algorithm to obtain i sub-thresholds. When the binary model is used for splitting to obtain non-integers, a rounding algorithm or an integer-taking algorithm can be adopted for processing the integers. For example, the total threshold is set to 13, 13 input binary models are split according to a binary algorithm, and a rounding algorithm can be used to obtain four total fractional thresholds of 1, 2, 3 and 7 or a rounding algorithm can be used to obtain 5 total fractional thresholds of 1, 2, 3 and 6. If the splitting obtains 4 sub-thresholds, the current-limiting time period is equally divided into 4 current-limiting time slices, and if the splitting obtains 5 sub-thresholds, the current-limiting time period is equally divided into 5 current-limiting time slices.
It should be noted that which model is used to split the total threshold is not limited here, as long as the token addition rate can be dynamically adjusted. In addition, when splitting, the total threshold value may be split first, or the current limiting time period may be split first, or both may be split simultaneously, where no limitation is made here.
Optionally, when the sub-threshold of the number of tokens added to each current-limiting time slice by the token bucket is randomly set, if the largest sub-threshold among all the sub-thresholds is set to the current-limiting time slice in the middle of all the current-limiting time slices, when a concurrent access request flows into the current-limiting service, the number of tokens added to the token bucket at the beginning is small, and the speed of processing the access request by the current-limiting service is slow, so that the system pressure of the current-limiting service is too high, and the normal operation of the system is affected, therefore, to avoid this, the i sub-thresholds are arranged in a positive order from large to small, and the number of tokens added to the 1 st to i th time slices by the token bucket is set to be the 1 st to i sub-thresholds. For example, 4 sub-thresholds are arranged in a positive sequence and then are respectively 4, 3, 2 and 1, the number of tokens added into the 1 st current-limiting time slice by the token bucket is set as the 1 st sub-threshold 4, the number of tokens added into the 2 nd current-limiting time slice by the token bucket is set as the 2 nd sub-threshold 3, and so on, so that the token adding rate is continuously decreased, when concurrent access requests flow into the current-limiting service, the number of tokens added into the token bucket is large at the beginning, the access request processing speed of the current-limiting service is high, the system pressure of the current-limiting service can be quickly relieved, and the normal operation of the system is ensured.
An adding module 403, configured to add tokens to the token bucket according to the token addition rate.
In this embodiment, tokens are added to the token bucket according to the dynamically adjusted token addition speed, so that the token addition rate is no longer constant, but is closer to the rate at which concurrent access requests flow into the limited flow service, and therefore when there are concurrent access requests, there are a sufficient number of tokens in the token bucket for processing the concurrent access requests, thereby reducing user waiting time, improving user experience, and fully utilizing server resources, and ensuring stable operation of the system.
Optionally, in order to avoid exceeding a sub-threshold set in each current-limiting time slice when a token is added to the token bucket, before adding the token, the current-limiting time slice to which the current time belongs is first determined, and whether the number of tokens added to the current-limiting time slice to which the token bucket belongs reaches a corresponding sub-threshold is determined, if not, the tokens are added to the token bucket according to the token addition rate. And if so, adding the token into the token bucket in the time slice to which the current time belongs, and adding the token into the token bucket by the next current limiting time slice.
Optionally, in a specific implementation scenario, after a previous time slice is completed, a next time slice is started, the step of looping the first time slice continues to add tokens to the token bucket, if the tokens in the token bucket are not consumed in the previous time slice, the number of tokens in the token bucket reaches a total threshold for storing tokens in the token bucket at the next time slice, and at this time, adding tokens to the token bucket again exceeds the total threshold, so to avoid that the number of tokens in the token bucket exceeds the total threshold for storing tokens when adding tokens to the token bucket, first determining whether the number of tokens in the token bucket at the current time is less than the total threshold, and if so, adding tokens to the token bucket according to the token addition rate, if not, the token addition is stopped.
It should be noted that, in order to avoid that the total threshold for storing tokens in the token bucket and the sub-threshold for each throttling time slice are exceeded when tokens are added to the token bucket, it is preferable to determine whether the total threshold for storing tokens in the token bucket has been reached by the tokens stored in the token bucket and whether the number of tokens added to the throttling time slice to which the token bucket belongs at the current time reaches the corresponding sub-threshold when the tokens are added to the token bucket.
The current limiting processing module 404, when the current limiting service receives an access request within the current limiting time period, determines whether the number of tokens in the token bucket is smaller than the number of the access request; and if so, performing current limiting processing on the access request.
In this embodiment, the current limiting processing module 404 is similar to the current limiting processing module 303, and is not described herein again.
Fig. 5 is a schematic structural diagram of an electronic device in the fifth embodiment of the present application.
One or more processors 501;
a storage device 502, which may be configured to store one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a method of flow restriction as described in any of the embodiments above.
Fig. 6 is a hardware structure of an electronic device according to a sixth embodiment of the present application; as shown in fig. 6, the hardware structure of the electronic device may include: a processor 601, a communication interface 602, a computer-readable storage medium 603, and a communication bus 604;
wherein the processor 601, the communication interface 602, and the computer-readable storage medium 603 communicate with each other via a communication bus 604;
optionally, the communication interface 602 may be an interface of a communication module, such as an interface of a GSM module; the processor 601 may be specifically configured to: determining a current limit time period of a current limit service and a total threshold value of a token bucket for storing tokens in the current limit time period; dynamically adjusting a token adding rate of the token bucket within the current limit time period according to the current limit time period and the total threshold value, so as to add tokens into the token bucket according to the token adding rate; when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; and if so, performing current limiting processing on the access request.
The Processor 601 may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components. The various methods, steps, and logic blocks disclosed in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
In the above embodiment, the electronic device may be a front-end intelligent terminal, or may be a background server, and when the electronic device is a front-end intelligent terminal, the electronic device is an intelligent household appliance. The appliance may include at least one of, for example: televisions, Digital Video Disc (DVD) players, audio devices, refrigerators, air conditioners, vacuum cleaners, ovens, microwave ovens, washing machines, air purifiers, set-top boxes, home automation control panels, security control panels, television boxes (e.g., SAMSUNG homesync, APPLE TVTM or GOOGLE TVTM), game consoles (e.g., xbostm and PLAYSTATIONTM), electronic dictionaries, electronic keys, camcorders, and electronic photo frames.
According to another embodiment, an electronic device may include at least one of: various medical devices (e.g., various portable medical measurement devices (e.g., blood glucose monitoring devices, heart rate monitoring devices, blood pressure measuring devices, body temperature measuring devices, etc.), Magnetic Resonance Angiography (MRA), Magnetic Resonance Imaging (MRI), Computed Tomography (CT) instruments, and ultrasound instruments), navigation devices, Global Positioning System (GPS) receivers, Event Data Recorders (EDR), Flight Data Recorders (FDR), vehicle entertainment information devices, electronic devices for ships (e.g., navigation devices and gyrocompasses for ships), avionic devices, security devices, automotive head units, home or industrial robots, Automated Teller Machines (ATMs) in banks, points of sale (POS) in stores, or internet of things devices (e.g., electric light bulbs, various sensors, electricity or gas meters, spray devices, shower devices, etc.) Fire alarm, thermostatic controller, street lamp, toaster, sports apparatus, hot water tank, heater, water heater, etc.).
According to some embodiments, an electronic device may include at least one of: furniture or a part of a building/structure, an electronic board, an electronic signature receiving device, a projector, and various types of measuring instruments (e.g., a water meter, an electricity meter, a gas meter, or a radio wave meter). An electronic device according to various embodiments of the present disclosure may be a combination of one or more of the various devices described above. Electronic devices according to some embodiments of the present disclosure may be flexible devices. In addition, the electronic device according to the embodiment of the present disclosure is not limited to the above-described device, but may include a new electronic device according to technical development.
In particular, the processes described above with reference to the flow diagrams may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable storage medium, the computer program comprising program code configured to perform the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication section, and/or installed from a removable medium. The computer program, when executed by a Central Processing Unit (CPU), performs the above-described functions defined in the method of the present application. It should be noted that the computer readable storage medium described herein can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access storage media (RAM), a read-only storage media (ROM), an erasable programmable read-only storage media (EPROM or flash memory), an optical fiber, a portable compact disc read-only storage media (CD-ROM), an optical storage media piece, a magnetic storage media piece, or any suitable combination of the foregoing. In the context of this application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable storage medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable storage medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
Computer program code configured to carry out operations for the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may operate over any of a variety of networks: including a Local Area Network (LAN) or a Wide Area Network (WAN) -to the user's computer, or alternatively, to an external computer (e.g., through the internet using an internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions configured to implement the specified logical function(s). In the above embodiments, specific precedence relationships are provided, but these precedence relationships are only exemplary, and in particular implementations, the steps may be fewer, more, or the execution order may be modified. That is, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. The described units may also be provided in a processor, and may be described as: a processor includes an initial determination module to determine a throttling time period for a throttling service and a total threshold for a token bucket to store tokens within the throttling time period; a dynamic adjustment module, configured to dynamically adjust a token addition rate of the token bucket within the current limit time period according to the current limit time period and the total threshold, so as to add tokens to the token bucket according to the token addition rate; the current limiting processing module is used for judging whether the number of tokens in the token bucket is smaller than the number of the access requests when the current limiting service receives the access requests in the current limiting time period; and if so, performing current limiting processing on the access request. For example, the initial determination module may also be described as a "module for determining a throttling time period for a throttling service and a total threshold for a token bucket to store tokens for the throttling time period".
As another aspect, the present application also provides a computer-readable storage medium, on which a computer program is stored, which when executed by a processor implements the method as described in any of the embodiments above.
As another aspect, the present application also provides a computer-readable storage medium, which may be contained in the apparatus described in the above embodiments; or may be present separately and not assembled into the device. The computer readable storage medium carries one or more programs which, when executed by the apparatus, cause the apparatus to: determining a current limit time period of a current limit service and a total threshold value of a token bucket for storing tokens in the current limit time period; dynamically adjusting a token adding rate of the token bucket within the current limit time period according to the current limit time period and the total threshold value, so as to add tokens into the token bucket according to the token adding rate; when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; and if so, performing current limiting processing on the access request.
The expressions "first", "second", "said first" or "said second" used in various embodiments of the present disclosure may modify various components regardless of order and/or importance, but these expressions do not limit the respective components. The above description is only configured for the purpose of distinguishing elements from other elements. For example, the first user equipment and the second user equipment represent different user equipment, although both are user equipment. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of the present disclosure.
When an element (e.g., a first element) is referred to as being "operably or communicatively coupled" or "connected" (operably or communicatively) to "another element (e.g., a second element) or" connected "to another element (e.g., a second element), it is understood that the element is directly connected to the other element or the element is indirectly connected to the other element via yet another element (e.g., a third element). In contrast, it is understood that when an element (e.g., a first element) is referred to as being "directly connected" or "directly coupled" to another element (a second element), no element (e.g., a third element) is interposed therebetween.
The term "module" or "functional unit" as used herein may mean, for example, a unit including hardware, software, and firmware, or a unit including a combination of two or more of hardware, software, and firmware. "module" may be used interchangeably with the terms "unit," "logic block," "component" or "circuitry," for example. A "module" or "functional unit" may be a minimal unit of an integrated component element or a portion of an integrated component element. A "module" may be the smallest unit or part thereof for performing one or more functions. A "module" or "functional unit" may be implemented mechanically or electrically. For example, a "module" or "functional unit" according to the present disclosure may include at least one of: application Specific Integrated Circuit (ASIC) chips, Field Programmable Gate Arrays (FPGAs), and programmable logic devices known or later developed to perform operations.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the invention. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (8)

1. A method of flow restriction, comprising:
determining a current limit time period of a current limit service and a total threshold value of a token bucket for storing tokens in the current limit time period;
splitting the total threshold value according to a complete binary tree model or a binary model to obtain i sub-threshold values, and equally dividing the current limiting time period into i current limiting time slices, wherein i is a positive integer;
dynamically adjusting the token adding rate of the token bucket in each current-limiting time slice according to i sub-thresholds and i current-limiting time slices so as to add tokens into the token bucket according to the token adding rate, wherein the i sub-thresholds respectively correspond to the i current-limiting time slices;
when the current limiting service receives an access request in the current limiting time period, judging whether the number of tokens in the token bucket is smaller than the number of the access request; and if so, performing current limiting processing on the access request.
2. The method of claim 1,
the dynamically adjusting the token adding rate of the token bucket in each current-limiting time slice according to the i sub-thresholds and the i current-limiting time slices comprises:
setting the number of the tokens added in each current limiting time slice by the token bucket to be one of the sub-threshold values;
and determining the token adding rate of the token bucket in each current limiting time slice according to each current limiting time slice and the sub-threshold value corresponding to the current limiting time slice.
3. The method of claim 2, wherein said setting the number of tokens added by the token bucket in each of the current-limited time slices to one of the sub-thresholds comprises:
and the i sub-threshold values are arranged in a positive sequence from large to small, and the number of the added tokens in the 1 st to i time slices of the token bucket is set as the 1 st to i sub-threshold values.
4. The method of claim 1, wherein adding tokens to the token bucket according to the token addition rate comprises:
and determining the current limiting time slice to which the current time belongs and judging whether the number of tokens added in the current limiting time slice to which the current time belongs by the token bucket reaches a corresponding sub threshold, if not, adding the tokens into the token bucket according to the token adding rate.
5. The method of claim 1, wherein adding tokens to the token bucket according to the token addition rate comprises:
and judging whether the number of tokens in the token bucket at the current time is smaller than the total threshold value, if so, adding tokens into the token bucket according to the token adding rate, and if not, stopping adding the tokens.
6. A flow restriction device, comprising:
the system comprises an initial determining module, a current limiting module and a token bucket, wherein the initial determining module is used for determining a current limiting time period of a current limiting service and a total threshold value of the token bucket for storing tokens in the current limiting time period;
the dynamic adjustment module is used for splitting the total threshold value according to a complete binary tree model or a binary model to obtain i sub-threshold values and equally dividing the current limiting time period into i current limiting time slices, wherein i is a positive integer;
dynamically adjusting the token adding rate of the token bucket in each current-limiting time slice according to i sub-thresholds and i current-limiting time slices so as to add tokens into the token bucket according to the token adding rate, wherein the i sub-thresholds respectively correspond to the i current-limiting time slices;
the current limiting processing module is used for judging whether the number of tokens in the token bucket is smaller than the number of the access requests when the current limiting service receives the access requests in the current limiting time period; and if so, carrying out current limiting processing on the access request.
7. An electronic device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-5.
8. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-5.
CN201910725969.8A 2019-08-07 2019-08-07 Flow limiting method and device, electronic equipment and computer readable storage medium Active CN112350953B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910725969.8A CN112350953B (en) 2019-08-07 2019-08-07 Flow limiting method and device, electronic equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910725969.8A CN112350953B (en) 2019-08-07 2019-08-07 Flow limiting method and device, electronic equipment and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN112350953A CN112350953A (en) 2021-02-09
CN112350953B true CN112350953B (en) 2022-07-01

Family

ID=74366635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910725969.8A Active CN112350953B (en) 2019-08-07 2019-08-07 Flow limiting method and device, electronic equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN112350953B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113098793B (en) * 2021-04-19 2021-12-14 南京甄视智能科技有限公司 Distributed service system current limiting method and distributed service system
CN113691457B (en) * 2021-08-10 2023-07-18 中国银联股份有限公司 Current limiting control method, device, equipment and storage medium
CN114124829A (en) * 2021-09-26 2022-03-01 新华三技术有限公司 Service forwarding control method and device and electronic equipment
CN114143265A (en) * 2021-11-26 2022-03-04 杭州安恒信息技术股份有限公司 Network flow current limiting method, device, equipment and storage medium
CN114745333B (en) * 2022-03-03 2023-05-30 珠海高凌信息科技股份有限公司 IMS system self-adaptive flow control method
CN114915596A (en) * 2022-05-10 2022-08-16 北京奇艺世纪科技有限公司 Data transmission method, device, equipment and storage medium
CN114826774B (en) * 2022-06-02 2024-01-30 天翼数字生活科技有限公司 Log request control method, server side and system for terminal equipment
CN115460153B (en) * 2022-07-26 2024-03-22 青岛海尔科技有限公司 Dynamic adjustment method and device for token bucket capacity, storage medium and electronic device
CN115473852A (en) * 2022-07-26 2022-12-13 青岛海尔科技有限公司 Current limiting method for user side input request, storage medium and electronic device
CN115941610A (en) * 2022-12-09 2023-04-07 中联智慧农业股份有限公司 Token bucket algorithm-based current limiting method, current limiting device and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106413002A (en) * 2016-11-22 2017-02-15 京信通信技术(广州)有限公司 Terminal velocity control method, terminal velocity control device and terminal velocity control base station
CN107465630A (en) * 2017-08-30 2017-12-12 郑州云海信息技术有限公司 A kind of bandwidth traffic monitoring and managing method and system
CN109150746A (en) * 2018-07-06 2019-01-04 苏宁易购集团股份有限公司 A kind of overall situation flow control method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7627675B2 (en) * 2003-05-01 2009-12-01 Cisco Technology, Inc. Methods and devices for regulating traffic on a network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106413002A (en) * 2016-11-22 2017-02-15 京信通信技术(广州)有限公司 Terminal velocity control method, terminal velocity control device and terminal velocity control base station
CN107465630A (en) * 2017-08-30 2017-12-12 郑州云海信息技术有限公司 A kind of bandwidth traffic monitoring and managing method and system
CN109150746A (en) * 2018-07-06 2019-01-04 苏宁易购集团股份有限公司 A kind of overall situation flow control method and device

Also Published As

Publication number Publication date
CN112350953A (en) 2021-02-09

Similar Documents

Publication Publication Date Title
CN112350953B (en) Flow limiting method and device, electronic equipment and computer readable storage medium
CN108174296B (en) Malicious user recognition methods and device
JP7398000B2 (en) Blockchain-based data detection method and device, computer device and program
US10798406B2 (en) Systems and methods for controlling video display
US10887210B2 (en) Online techniques for parameter mean and variance estimation in dynamic regression models
CN109788025B (en) Data grading method and device, electronic equipment and computer readable medium
WO2017166630A1 (en) Task priority correctingon method and device
CN115599640B (en) Abnormal supply end warning method, electronic device and medium
US10528558B2 (en) Processing a database query in a database system
CN113453054B (en) Audio and video frame loss method and device, computer equipment and storage medium
CN115018909B (en) Method and device for generating drivable area, electronic equipment and computer readable medium
CN106792109B (en) Video playing method and device and terminal
US9426308B2 (en) Enabling mobile computing devices to track data usage among mobile computing devices that share a data plan
US10929897B2 (en) Prompting a user for feedback based on user experience
CN113965313B (en) Model training method, device, equipment and storage medium based on homomorphic encryption
US9069629B2 (en) Bidirectional counting of dual outcome events
WO2016095569A1 (en) Method and apparatus for reducing false detection rate, and storage medium
CN110960857B (en) Game data monitoring method and device, electronic equipment and storage medium
US10142335B2 (en) Dynamic intrinsic chip identification
US20170168672A1 (en) Method and electronic device for data updating
CN113824689B (en) Edge computing network, data transmission method, device, equipment and storage medium
CN111582456B (en) Method, apparatus, device and medium for generating network model information
CN109714630B (en) Picture storage method and device, electronic equipment and computer readable medium
US11463493B2 (en) Method and apparatus for playing media file
TW201227510A (en) Confidence-based static analysis

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant