CN106603256B - Flow control method and device - Google Patents

Flow control method and device Download PDF

Info

Publication number
CN106603256B
CN106603256B CN201510663321.4A CN201510663321A CN106603256B CN 106603256 B CN106603256 B CN 106603256B CN 201510663321 A CN201510663321 A CN 201510663321A CN 106603256 B CN106603256 B CN 106603256B
Authority
CN
China
Prior art keywords
flow control
resource
application program
control object
calling
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
CN201510663321.4A
Other languages
Chinese (zh)
Other versions
CN106603256A (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.)
Taobao China Software Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510663321.4A priority Critical patent/CN106603256B/en
Publication of CN106603256A publication Critical patent/CN106603256A/en
Application granted granted Critical
Publication of CN106603256B publication Critical patent/CN106603256B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The embodiment of the invention provides a flow control method and a flow control device, which are used for monitoring a preset operation state index of a flow control object according to a flow control rule; when the preset running state index of the flow control object meets the corresponding trigger condition, determining the resource or the application program of which the calling relation has an effect on the monitored preset running state index of the flow control object according to the calling relation between each application program counted currently and the resource called in the running process; and determining the resource or application program needing to carry out flow control from the determined resource or application program to carry out flow control. And dynamically and effectively limiting the current of the resource or the application program needing current limiting in real time.

Description

Flow control method and device
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a flow control method and apparatus.
Background
The rapid growth of the Internet has led to a dramatic increase in the amount of access to network systems. In the face of rapidly increasing access traffic, the network system needs to have more powerful functions to handle a large amount of concurrent access traffic. For a network server providing a heavy-load network access service, CPU and I/O processing capabilities quickly become bottlenecks, and this problem cannot be solved fundamentally only by improving hardware performance. When the network system is attacked or the access traffic suddenly increases due to other reasons, the network system may be down due to high load or insufficient memory, and finally the network system may not be accessible.
Taking Sysguard as an example, Sysguard is a module for performing flow control in a proxy server, and Sysguard can set a threshold value for memory resources and system load, when the memory resources or the system load reaches the threshold value, return 503 or 504 responses directly for all new resource call requests to reject new resource call requests, since the memory resources and the system load are both limited resources, and the consumption of the memory resources and the occupation of the system load are the result of all application programs in a network system calling system resources, and unimportant applications or applications with weak dependency on system resources may exist in the application programs, so that directly rejecting new resource call requests results in the fact that the processing capacity of the network system is wasted in unimportant applications or applications with weak dependency on system resources, and the requests of subsequent applications which may be more important or have stronger dependency on system resources are rejected, thus wasting the processing power of the system;
the Sysguard can also be configured to transfer the system load to other network systems in the same cluster when its resource call reaches the call limit, which may result in overload of other network systems and eventually avalanche, resulting in the crash of the whole cluster.
It can be seen that the current limiting method adopted in the prior art can only mechanically reject the subsequent call request one by one or transfer the subsequent call request to other network systems to limit the current of the system resource when the system resource reaches the use threshold, but cannot dynamically limit the current of the system resource according to the actual use condition of the system resource, that is, according to the use condition of the system resource by the application program which has occupied the system resource and the use condition of the system resource requested by the new resource call request.
Disclosure of Invention
The embodiment of the invention provides a flow control method and a flow control device, which are used for solving the problem that the existing flow control method cannot dynamically control resources.
Based on the above problem, an embodiment of the present invention provides a flow control method, including:
monitoring a preset operation state index of the flow control object according to the flow control rule;
the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition for performing flow control on a corresponding flow control object, which is determined according to a preset operation state index of at least one flow control object;
when the preset running state index of the flow control object meets the corresponding trigger condition, determining the resource or application program of which the calling relation has an effect on the preset running state index of the monitored flow control object according to the calling relation between each application program counted currently and the resource called in the running process;
and determining the resources or the application programs needing to be subjected to flow control from the determined resources or application programs, and performing flow control.
An embodiment of the present invention provides a flow control device, including:
the monitoring module is used for monitoring the preset operation state index of the flow control object according to the flow control rule; the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition for performing flow control on a corresponding flow control object, which is determined according to a preset operation state index of at least one flow control object;
the judging module is used for determining resources or application programs of which the calling relation has an effect on the monitored preset running state index of the flow control object according to the calling relation between each application program counted currently and the called resources in the running process when the monitoring module monitors that the preset running state index of the flow control object meets the corresponding triggering condition;
and the flow control module is used for determining the resources or the application programs needing to be subjected to flow control from the resources or the application programs determined by the judging module and performing flow control.
The embodiment of the invention has the beneficial effects that:
according to the flow control method and the flow control device provided by the embodiment of the invention, the preset operation state index of the flow control object is monitored according to the flow control rule; the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition which is determined according to a preset operation state index of at least one flow control object and used for carrying out flow control on the corresponding flow control object; when the preset running state index of the flow control object meets the corresponding trigger condition, determining the resource or the application program of which the calling relation has an effect on the monitored preset running state index of the flow control object according to the calling relation between each application program counted currently and the resource called in the running process; and determining the resources or the application programs needing to be subjected to flow control from the determined resources or application programs, and performing flow control. The flow control method provided in the embodiment of the present invention is different from the prior art, a flow control rule is determined for a flow control object that needs to perform flow control in resources called by an application program, and a preset operation state index of the flow control object is monitored, when an index value of the preset operation state index of the flow control object violates a corresponding flow control rule, a subsequent new resource calling request is not rejected, the new resource calling request is not forwarded to other systems, but a resource or an application program having an effect on the monitored preset operation state index of the flow control object is determined according to a calling relationship between each application program and resources called in an operation process counted currently, and the resource or the application program that needs to perform flow control is determined from the determined resource or application program to perform flow control, therefore, the resources or the application programs having the effect on the preset operation state index of the flow control object can be dynamically determined according to the current operation state of the resources and the calling relationship among the resources in the operation process of each application program, the resources or the application programs needing to be subjected to current limiting are determined to be subjected to current limiting, and the current limitation of the resources or the application programs needing to be subjected to current limiting is dynamically and effectively carried out in real time.
Drawings
Fig. 1 is a flowchart of a flow control method according to an embodiment of the present invention;
fig. 2 is a flowchart of a flow control method according to embodiment 1 of the present invention;
fig. 3 is a schematic diagram of a resource invocation relationship generated for an application a according to embodiment 1 of the present invention;
fig. 4 is a schematic overall architecture diagram of a method for implementing flow control according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a flow control device according to an embodiment of the present invention.
Detailed Description
The present invention provides a method and a device for controlling flow rate, which are described below with reference to the accompanying drawings, and it should be understood that the preferred embodiments described herein are only for illustrating and explaining the present invention and are not intended to limit the present invention. And the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
An embodiment of the present invention provides a flow control method, as shown in fig. 1, including:
s101, monitoring a preset operation state index of a flow control object according to a flow control rule;
the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition for performing flow control on the corresponding flow control object, which is determined according to the preset operation state index of at least one flow control object.
And S102, when the preset operation state index of the flow control object meets the corresponding trigger condition, determining the resource or the application program of which the calling relationship has an effect on the monitored preset operation state index of the flow control object according to the calling relationship between each application program counted currently and the resource called in the operation process.
S103, determining the resource or the application program which needs to be subjected to flow control from the determined resources or application programs, and performing flow control.
When the flow control method provided by the embodiment of the invention is used for controlling the flow of the flow control object, the current running state of the flow control object is considered, and the calling relation between each application program and the resources called in the running process is considered.
The method and the related equipment provided by the invention are described in detail by using specific embodiments in the following combined with the attached drawings.
Example 1:
in embodiment 1 of the present invention, a flow control method is provided, where in embodiment 1 of the present invention, a flow control device is set for each application program, the flow control device may be transparent to the application program, the flow control device may establish a call relationship between resources called when the application program runs and a call relationship between other application programs and the resources, and may also perform statistics and monitoring on an operating state of each resource, so as to perform access flow control on the resource when a corresponding operating state index violates a flow control rule.
As shown in fig. 2, a flow control method provided in embodiment 1 of the present invention specifically includes the following steps:
s201, receiving a flow control rule which is pushed by a flow control rule center and aims at least one flow control object.
The flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a trigger condition for performing flow control on the corresponding flow control object, which is determined according to a preset operation state index of at least one flow control object.
Further, the execution subject of the embodiment of the present invention may be a flow control device, and since a corresponding flow control device is set for each application, the resource for which the flow control device performs flow control may be a resource called in the running process of the application corresponding to the flow control device.
Further, the embodiment of the present invention provides a rule center, where the rule center may be configured to determine, according to a current application scenario and existing experience, whether to currently perform flow control on a certain operating state index of a certain resource of an application program, and an index threshold of the operating state index, and after determining a resource that needs to perform flow control and an index threshold of the certain operating state index of the resource, send resource information and the index threshold that need to perform flow control to a flow control device that manages the resource, and the flow control device monitors and controls the resource. Therefore, the execution of the step and the subsequent steps do not have a strict sequence, and the flow control rule pushed by the flow control rule center may be received when any step is executed subsequently.
Further, for different application scenarios, the application scenario may be composed and implemented based on a plurality of different application programs, for example: in the purchase scenario, the application program in the purchase scenario may include a purchase application, a placing order application, an inventory application, etc. in the purchase scenario, and if the inventory is taken as one scenario, the application program in the inventory scenario may include an inventory application, etc.
Further, each application program may invoke a resource when executed, and the resource in the embodiment of the present invention may be a dynamic resource or a static resource, and specifically, the dynamic resource may be a resource that embodies the external service capability of the application program and consumes a system resource when invoked, for example: methods, classes, databases, etc., that is, dynamic resources, when called, may call other dynamic or static resources, such as: the operation of opening the page consumes one method or class, and calls the storage resource, CPU resource and the like of the system to perform operation while consuming the method or class, and returns to the opened page;
static resources may be resources that do not themselves call system resources any more, such as: storage resources, CPU resources, etc., that is, static resources consume themselves when called and do not call other dynamic or static resources, such as: a block of cache is allocated that is consumed but the operation of allocating the cache does not consume other resources.
In this step, the resource may include one or more of the following: method, class, database, storage resource, CPU resource.
S202, counting the calling relation between each application program and the called resource in the running process.
Furthermore, the step can be executed when the resource calling is needed to be executed for the first time, and the counted resource calling relation can be used when the subsequent application program operates again, so that the application program does not need to be counted each time.
Further, when the call relation is counted, in order to make the counted call relation more intuitive, a respective resource call relation graph may be generated for each application program. The resource call relationship graph may be composed of three types of vertices: an application entry vertex, a call entry vertex, and a resource vertex. Each application may have an application entry vertex, an entry characterizing the application, and each application may have at least one call entry vertex, a call entry characterizing the application, the call entry being used to provide an entry for a resource that another application calls the application, that is, a resource that another application wants to call the application must determine the application through the application entry vertex and enter the resource that the application calls through the call entry provided by the application for the other application. Each application may have multiple resource vertices that characterize the resources called during the application run, which may be classes, methods, databases, storage resources, CPU resources, etc. Each application program may include multiple call processes in the running process, resources involved in each call process may be sequentially connected through the directed edges according to the call sequence to generate a path corresponding to the call process, that is, in each call path, two resource vertices directly connected through the directed edges are in a call and called relationship, and when a resource represented by a certain resource vertex in a certain call path does not call other resources, the call path is ended.
When the calling relationship of the application program is simple, and each resource node has a unique superior node, namely a father node, the resource calling relationship graph is a special form of a graph, namely a resource calling relationship tree, the entry vertex of the application program is a root node, the calling entry vertices are brother nodes and serve as child nodes of the root node, the calling resource vertex in the calling path is the father node of the called resource vertex, and the starting vertex of the calling path serves as the child node for calling the starting vertex; when the calling relationship of the application program is complex, that is, when any resource vertex has more than one superior node, that is, a parent node, the resource calling relationship can be characterized by generating a resource calling relationship chart, which is specifically as follows:
for each application program, adopting a mode of generating a resource calling relationship graph for the application program, and counting calling relationships among resources called by the application program in the running process and calling relationships among other application programs and the resources:
characterizing an entrance of the application program through an entrance vertex of the application program of the graph, and characterizing a call entrance of the application program through a call entrance vertex of the graph, wherein the call entrance is used for providing an entrance for other application programs to call resources of the application program; and are
Taking the inlet vertex of the application program as an initial point, taking at least one calling inlet vertex as a terminal point, and respectively connecting the initial point with at least one terminal point through a directed edge;
characterizing resources used by the application program in the running process through the resource vertexes of the graph; and are
For each calling process of at least one calling process in the running process of the application program, sequentially connecting the resources used in the calling process by the directed edges according to the calling sequence to generate a path corresponding to the calling process;
and for each path, determining a calling inlet corresponding to the calling process corresponding to the path, taking a calling inlet vertex representing the calling inlet as an initial point, taking an initial vertex of the path as a tail point, and connecting the initial point and the tail point through a directed edge to obtain a resource calling relation graph corresponding to the application program. And saving the calling relation between the resources called by the application program in the running process and the calling relation between other application programs and the resources through the resource calling relation graph.
Further, fig. 3 is a schematic diagram of a resource invocation relationship generated for the application a according to the embodiment of the present invention, as shown in fig. 3, a vertex Root represents an application entry of the application a, a vertex entry1, a vertex entry2, and a vertex entry3 respectively represent invocation entries provided by the application a for other applications, a vertex child1, a vertex tair1, a vertex child2, and a vertex tair2 respectively represent resources invoked by the application a during a running process, a vertex child1- > vertex tair1 represents a first path invoked by the invocation entry of the vertex entry1, a resource characterized by the vertex child1 invokes a resource characterized by the vertex tair1, a vertex child2- > vertex 2 represents a second path invoked by the invocation entry of the vertex entry1, and a resource of the vertex child2 invokes a resource characterized by the vertex tair 2. Assume that application b calls resource child2 through entry2, which can be recorded in a number of ways, such as: a record may be generated for child2 whose contents may include application b calling resource child2 through entry 2.
S203, aiming at each running state index corresponding to each resource used by the application program in the running process, determining the index value of the running state index according to a preset statistical period.
Further, in the embodiment of the present invention, the operation status index includes one or more of the following indexes: response time, number of concurrent threads, Query Per Second (QPS), exception statistics, and whether a pre-set resource needs to be called.
Further, the response time (response time) may characterize the time to respond to the call request; the number of concurrent threads can represent the number of calling threads which can be simultaneously carried; the query rate per second may characterize the number of requests that the system can handle per second; the abnormal statistic can represent the times of occurrence of abnormality in the application running process; the preset resource may be a resource that needs to monopolize the preset resource when some resource calls the preset resource, and therefore, when the running state index of a certain resource indicates "whether the preset resource needs to be called" is an index value "yes", it needs to first determine that the preset resource is not called by the resource that needs to monopolize the preset resource.
Further, each resource may have different operation status indicators, i.e., one or more of the above-described operation status indicators, according to its own nature.
Further, each resource is unique in the application scenario in which the application that invoked the resource is located. That is, each resource may be a resource of an application program that calls the resource for the first time, that is, the resource may be considered as belonging to an application program that calls itself for the first time, and another application program that needs to call the resource must enter the application program that has called the resource through a call entry provided by the application program that has called the resource to call the resource. Therefore, the running state of each resource can be uniformly counted. During specific implementation, cluster points can be established for each endpoint (including an application program entry vertex, a call entry vertex and a resource vertex) in the established resource call relation graph, and the running state of the vertex corresponding to the cluster point is counted and stored through each cluster point.
Furthermore, the load capacity (such as system CPU, memory usage and the like) of the system can be treated as a cluster point besides the resources, so that the index threshold value of the preset running state index can be adjusted in real time according to the running condition of the system, and the dynamic self-adaptive current limiting is realized. Once the system is found to be unstable, the flow rate allowed to enter at the top of the entry of all the application programs in the corresponding application scene can be reduced according to the current running condition of the system without rejecting all new requests, and then the flow rate allowed to enter is continuously and gradually reduced or improved according to the current running condition of the system, so that the processing capacity of the system is not wasted, and the system collapse is not caused.
Further, the preset statistical period may be set according to actual needs, and when each statistical period comes, the index value of each operation state index corresponding to each resource is counted.
As shown in fig. 3, the vertex child1, the vertex tair1, the vertex child2, and the vertex tair2 may correspond to the cluster point 1, the cluster point 2, the cluster point 3, and the cluster point 4, and perform the running state statistics on the resources represented by the cluster point 1, the cluster point 2, the cluster point 3, and the cluster point 4.
Further, the execution of steps S202 to S203 and the execution of steps S205 to S207 are not in strict sequence. For step S202 and steps S205 to S207, during the process of counting the resource calling relationship, or after completing the counting of the resource calling relationship, monitoring the preset operation state index of the flow control object according to the flow control rule, and determining that the application program that needs to perform flow control performs flow control on the flow control object; for step S203 and steps S205 to S207, statistics of each operation state index value of each resource may be executed in parallel, and according to the flow control rule, the preset operation state index of the flow control object is monitored, and it is determined that the application program that needs to perform flow control performs flow control on the application program.
And S204, aiming at the index value of the running state index determined in the S203 each time, determining the index value of the running state index of the resource as the statistics of the time according to the index values of the running state index determined in the previous time and the current time based on a preset moving average algorithm.
Further, without executing this step, the index value of the operation state index determined each time may be determined as the index value of the operation state index of the resource counted this time.
However, in order to reflect the trend of the change of the operating state of the resource, the operating state index value determined for each preset statistical period may be calculated based on a preset moving average algorithm, and specifically, for each operating state index, the index value of the operating state index of the resource counted at this time may be determined by using a preset moving average algorithm based on the new index value of the operating state index determined each time and the index values of the operating state indexes determined a preset number of times before this time. It can be seen that the average moving algorithm is used to perform calculation based on the index value of the operation state index obtained last time and the index values of the operation state indexes obtained last times, and the obtained value is used as the index value of the operation state index counted last time.
Further, the preset moving average algorithm may include: simple moving average (simple moving average), cumulative moving average (cumulative moving average), weighted moving average (weighted moving average), exponential moving average (exponential moving average), and the like.
Taking the cumulative moving average algorithm as an example, for a certain operation state index, assume that the index value determined last (n +1 th time) is xn+1Then, the index value CMA of the operation state index as the statisticn+1Comprises the following steps:
Figure BDA0000821294040000111
wherein, CMAnAnd (4) representing the index value of the running state index counted last time (nth time).
And S205, monitoring the preset running state index of the flow control object according to the flow control rule.
Further, the rule center dynamically generates the control rules in real time according to the application scene and the current running state of each resource, and pushes the control rules to the flow control device in time.
Further, if step S204 is executed, this step may be specifically implemented as: and monitoring the index value of the preset operation state index of the flow control object counted each time.
And S206, when the preset operation state index of the flow control object meets the corresponding trigger condition, determining the resource or the application program of which the calling relation has an effect on the monitored preset operation state index of the flow control object according to the calling relation between each application program counted currently and the resource called in the operation process.
Further, in this step, different operation state indexes are affected by different invocation relations, for example: the flow control object can be used as a caller to call the resource, and the call relation can enable the called resource to act on running state indexes such as response time of the flow control object and the like; the flow control object can be called by a plurality of application programs as a called user, and the calling relation can enable the application programs to act on running states of the flow control object, such as the number of concurrent threads and the like; the flow control object can be used as a caller to call a preset resource, and the call relation can enable the preset resource to have an effect on the running states of whether the flow control object needs to call the preset resource and the like.
And S207, determining the resource or the application program which needs to be subjected to flow control from the resource or the application program determined in the S206, and performing flow control.
Further, the steps S206 to S207 can be embodied into three cases according to actual situations:
in the first case: the flow control object is used as a callee and is called by other application programs through a call entry provided by the application program that calls the flow control object first, and step 206 may be specifically implemented as:
step one, determining that the monitored index value of the preset operation state index of the flow control object reaches an index threshold value corresponding to the preset operation state index included in the flow control rule.
And step two, determining each application program for calling the monitored flow control object according to the calling relationship between each application program counted currently and the resource called in the running process, wherein the calling of the monitored flow control object has an effect on the preset running state index of the monitored flow control object.
Step 207 may be embodied as:
step one, determining the application program of which the index value of the preset running state index reaches the corresponding use threshold value when the flow control object is called according to the use threshold value of the preset running state index corresponding to each application program in the flow control rule when the monitored flow control object is called.
And secondly, limiting or stopping the determined application program from calling the monitored flow control object, so that the index value of the preset running state index is lower than the corresponding index threshold value when the monitored flow control object is called.
Further, in this embodiment, the trigger condition for performing flow control on the corresponding flow control object, which is determined according to the preset operation state index of the at least one flow control object and included in the flow control rule, may be an index threshold value of the preset operation state index of the at least one flow control object. Then, when it is monitored that the index value of the preset operation state index of the flow control object reaches the corresponding index threshold, it may be determined that the preset operation state index of the flow control object satisfies the corresponding trigger condition.
In the first case, for the case that the flow control object of the application is called by other applications at the same time, the flow control rule may further include usage thresholds of different applications on preset operation state indexes of the flow control object. That is to say, the flow control method provided in the embodiment of the present invention can perform flow control on a flow control object according to the importance of each application program or the dependency relationship between each application program and the flow control object, for example: the method ensures that important applications or applications with strong dependency on the flow control object call the flow control object, and limits the calling of unimportant applications or applications with weak dependency on the flow control object to the flow control object. Then, the importance of each application or the dependency relationship between each application and the flow control object, etc. can be determined by the flow control rule. The flow control rule can determine the relationship between the application program and the flow control object by setting a use threshold value aiming at a preset operation state index when the flow control object is called by different application programs;
taking a preset operation state index as the number of concurrent threads as an example, assuming that an application program a and an application program b both call a flow control object, and the threshold value of the number of concurrent threads of the flow control object is 100, since the application program a is an important application and the application program b is an unimportant application, the flow control rule center not only needs to send the flow control object to the flow control device with the threshold value of the number of concurrent threads of the flow control object being 100, but also needs to notify the flow control device that the number of concurrent threads that can be used when the application program a calls the flow control object is 80, and the number of concurrent threads that can be used when the application program b calls the flow control object is 10, when the flow control device monitors that the number of concurrent threads of the flow control object reaches 100, it is assumed that the number of concurrent threads that is actually used when the application program a calls the flow control object is 70, and the number of concurrent threads that is actually, then the number of concurrent threads used by application b to call the flow control object is limited to 10 to ensure that the number of concurrent threads used by application a to call the flow control object and the total number of concurrent threads do not exceed the threshold 100.
In the second case: the flow control object is a method used as a caller, and the method represents that resources of other application programs are called, and step 206 may be specifically implemented as:
step one, determining that the monitored index value of the preset operation state index of the flow control object reaches an index threshold value corresponding to the preset operation state index included in the flow control rule.
And secondly, determining the resources of other application programs which are called by the monitored flow control object and have the effect on the preset running state index of the monitored flow control object according to the calling relation between each application program counted currently and the resources called in the running process.
Step 207 may be embodied as:
step one, determining resources which cause the monitored index value of the preset operation state index of the flow control object to reach the corresponding index threshold value from the determined resources.
And step two, limiting or stopping the monitored flow control object from calling the determined resources of other application programs, so that the index value of the preset running state index of the monitored flow control object is lower than the corresponding index threshold value.
Further, in the second case, for the case that the flow control object of the present application calls the resource of another application, the operation of calling the resource in the other application in the present application itself may also be used as the resource called by the present application, for example: the method resource also has an operation state index, the method resource is used as a flow control object, a preset operation state index of the flow control object is taken as a response time, for example, the threshold value of the response time of the flow control object for calling resources in other applications is assumed to be 100ms, the threshold value of the response time of the flow control object sent by a flow control rule center is obtained through a flow control device and is 100ms, when the operation speed of other application programs where the resources called by the flow control object are located is slowed down due to some reasons, the response time of the flow control object for calling the resources of the other application programs is slowed down, and when the response time is monitored to reach the threshold value of 100ms, the other application programs to which the resources called by the flow control object belong are determined, so that the calling of the other application program resources by the flow control object is stopped or limited later.
In the third case: the flow control object is used as a caller to call a preset resource in the application program to which the flow control object belongs, and step S206 may be specifically implemented as:
step one, determining that the monitored index value of the preset operation state index of the flow control object meets the flow control rule and the preset resource needs to be called.
And step two, determining the resource needing to monopolize the preset resource when the preset resource is called according to the calling relation between each application program counted currently and the resource called in the running process.
Step S207 may be embodied as:
step one, judging whether the determined resource is calling a preset resource.
And step two, if so, stopping the monitored flow control object from calling the preset resource until the determined resource completes the calling of the preset resource.
Further, in a third case, the preset operation state index of the flow control object is: the index value of 'whether the preset resource needs to be called' is 'the preset resource needs to be called', and the triggering condition for flow control is met. That is to say, for a preset resource in an application program, there is a resource in the application program, and the resource needs to monopolize the preset resource when calling the preset resource, where monopolization can be understood as that when the resource monopolizes the preset resource, other resources cannot call the preset resource, then, the flow control rule center sets a preset operation state index of "whether the preset resource needs to be called" for a flow control object that needs to call the preset resource, which is equivalent to setting a "lock" for the preset resource, and when the resource that needs to monopolize the preset resource calls the preset resource, the preset resource is locked, so that other resources cannot call the preset resource, and until the resource that needs to monopolize the preset resource completes calling the preset resource, other resources cannot call the preset resource.
Taking a method in which a flow control object is used as a data base reading method, preset resources are used as data base resources, and resources needing to monopolize the preset resources are used as a data base writing method as an example, when the data base reading method needs to read the data base, a triggering condition of flow control is met, the flow control device determines whether the data base writing method is writing the data base, if not, the data base reading method can perform read operation on the data base resources, and if the data base writing method is performing write operation on the data base, the data base reading method needs to wait for the data base writing method to complete write operation on the data base and then perform read operation on the data base resources.
Further, fig. 4 is a schematic diagram of an overall architecture of the method for implementing flow control according to the embodiment of the present invention. As shown in fig. 4, the overall architecture diagram includes an application a, an application B, and an application C, a flow control device corresponding to the application a, and a flow control rule center, where the application a, the application B, and the application C call a resource of the application a through the flow control device corresponding to the application a, the flow control device receives a flow control rule pushed by the flow control rule center, and maintains a flow control rule management logic, and maintains a resource vertex management control logic managed by itself, and for a resource that needs to be protected, for example: and monitoring the resource A, the resource B and the resource C to ensure that the index values of the resources to the preset operation state indexes do not exceed the corresponding index threshold values.
Based on the same inventive concept, embodiments of the present invention further provide a flow control device, and since the principle of the problems solved by these devices is similar to that of the aforementioned flow control method, the implementation of the device may refer to the implementation of the aforementioned method, and repeated details are omitted.
As shown in fig. 5, a flow control device according to an embodiment of the present invention includes:
the monitoring module 501 is configured to monitor a preset operation state index of a flow control object according to a flow control rule; the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition for performing flow control on a corresponding flow control object, which is determined according to a preset operation state index of at least one flow control object;
a determining module 502, configured to determine, when the monitoring module 501 monitors that a preset operation state index of a flow control object satisfies a corresponding trigger condition, a resource or an application program, of which a calling relationship has an effect on the monitored preset operation state index of the flow control object, according to a calling relationship between each application program counted currently and a resource called in an operation process;
a flow control module 503, configured to determine a resource or an application program that needs to perform flow control from the resources or the application programs determined by the determination module 502, and perform flow control.
Further, the resources include one or more of: method, class, database, storage resource, CPU resource.
Further, the apparatus further comprises: a statistics module 504;
the counting module 504 is configured to count, for each application program, a call relationship between resources called by the application program in the running process, and call relationships between other application programs and the resources, in a manner of generating a resource call relationship diagram for the application program: characterizing an entry of the application program through an application program entry vertex of the graph, and characterizing a call entry of the application program through a call entry vertex of the graph, wherein the call entry is used for providing an entry for other application programs to call resources of the application program; taking the inlet vertex of the application program as an initial point, taking at least one calling inlet vertex as a terminal point, and respectively connecting the initial point with at least one terminal point through a directed edge; characterizing resources used by the application program in the running process through the resource vertexes of the graph; for each calling process of at least one calling process in the running process of the application program, sequentially connecting the resources used in the calling process by the directed edges according to the calling sequence to generate a path corresponding to the calling process; and for each path, determining a calling inlet corresponding to the calling process corresponding to the path, taking a calling inlet vertex representing the calling inlet as an initial point, taking an initial vertex of the path as a tail point, and connecting the initial point and the tail point through a directed edge to obtain a resource calling relation graph corresponding to the application program.
Further, the determining module 502 is specifically configured to determine that an index value of a preset operation state index of the monitored flow control object reaches an index threshold corresponding to the preset operation state index included in the flow control rule; determining each application program which calls the monitored flow control object according to the call relation between each application program counted currently and the called resource in the running process, wherein the call of the monitored flow control object has an effect on the preset running state index of the monitored flow control object;
the flow control module 503 is specifically configured to determine, according to the usage thresholds of the preset operation state indexes respectively corresponding to each application program included in the flow control rule when the monitored flow control object is called, an application program for which an index value of the preset operation state index reaches the corresponding usage threshold when the flow control object is called; and limiting or stopping the determined application program from calling the monitored flow control object, so that the index value of the preset running state index is lower than the corresponding index threshold value when the monitored flow control object is called.
Further, the determining module 502 is specifically configured to determine that an index value of a preset operation state index of the monitored flow control object reaches an index threshold corresponding to the preset operation state index included in the flow control rule; determining resources which are called by the monitored flow control object and have an effect on the preset running state index of the monitored flow control object according to the calling relation between each application program counted currently and the resources called in the running process;
the flow control module 503 is specifically configured to determine, from the determined resources, a resource that causes an index value of the preset operation state index of the monitored flow control object to reach a corresponding index threshold; and limiting or stopping the call of the monitored flow control object to the resources of the other application programs, so that the index value of the preset running state index of the monitored flow control object is lower than the corresponding index threshold value.
Further, the determining module is specifically configured to determine that what is included in the flow control rule when the monitored index value of the preset operation state index of the flow control object satisfies the flow control rule is that a preset resource needs to be called; determining the resource which needs to monopolize the preset resource when the preset resource is called according to the calling relation between each application program which is counted currently and the resource called in the running process;
the flow control module is specifically configured to determine whether the determined resource is calling the preset resource; and if so, stopping the monitored flow control object from calling the preset resource until the determined resource completes the calling of the preset resource.
Further, the statistical module 504 is further configured to, before the monitoring module 501 monitors a preset operation state index of a control object, determine an index value of the operation state index according to a preset statistical period for each operation state index corresponding to each resource used by the application program in the operation process; determining the index value of the running state index of the resource as the statistics of the time according to the index value of the running state index determined for the time and the index values of the running state index determined for a plurality of times before the time based on a preset moving average algorithm;
the monitoring module 501 is specifically configured to monitor the index value of the preset operation state index of the flow control object counted by the counting module 504 each time.
Further, the operation state index includes one or more of the following indexes:
response time, the number of concurrent threads, the query rate per second QPS, the abnormal statistics, and whether preset resources need to be called.
Further, the apparatus further comprises: a receiving module 505;
the receiving module 505 is configured to receive a flow control rule for at least one flow control object pushed by a flow control rule center.
The functions of the above units may correspond to the corresponding processing steps in the flows shown in fig. 1 to fig. 2, and are not described herein again.
According to the flow control method and the flow control device provided by the embodiment of the invention, the preset operation state index of the flow control object is monitored according to the flow control rule; the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition which is determined according to a preset operation state index of at least one flow control object and used for carrying out flow control on the corresponding flow control object; when the preset running state index of the flow control object meets the corresponding trigger condition, determining the resource or the application program of which the calling relation has an effect on the monitored preset running state index of the flow control object according to the calling relation between each application program counted currently and the resource called in the running process; and determining the resources or the application programs needing to be subjected to flow control from the determined resources or application programs, and performing flow control. The flow control method provided in the embodiment of the present invention is different from the prior art, a flow control rule is determined for a flow control object that needs to perform flow control in resources called by an application program, and a preset operation state index of the flow control object is monitored, when an index value of the preset operation state index of the flow control object violates a corresponding flow control rule, a subsequent new resource calling request is not rejected, the new resource calling request is not forwarded to other systems, but a resource or an application program having an effect on the monitored preset operation state index of the flow control object is determined according to a calling relationship between each application program and resources called in an operation process counted currently, and the resource or the application program that needs to perform flow control is determined from the determined resource or application program to perform flow control, therefore, the resources or the application programs having the effect on the preset operation state index of the flow control object can be determined according to the current operation state of the resources and the calling relationship among the resources in the operation process of each application program, namely, the resources or the application programs needing to be subjected to current limiting are dynamically and effectively limited in real time.
Through the above description of the embodiments, it is clear to those skilled in the art that the embodiments of the present invention may be implemented by hardware, or by software plus a necessary general hardware platform. Based on such understanding, the technical solutions of the embodiments of the present invention may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.), and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods according to the embodiments of the present invention.
Those skilled in the art will appreciate that the drawings are merely schematic representations of one preferred embodiment and that the blocks or flow diagrams in the drawings are not necessarily required to practice the present invention.
Those skilled in the art will appreciate that the modules in the devices in the embodiments may be distributed in the devices in the embodiments according to the description of the embodiments, and may be correspondingly changed in one or more devices different from the embodiments. The modules of the above embodiments may be combined into one module, or further split into multiple sub-modules.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (14)

1. A method of flow control, comprising:
monitoring a preset operation state index of the flow control object according to the flow control rule;
the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition for performing flow control on a corresponding flow control object, which is determined according to a preset operation state index of at least one flow control object;
when the preset running state index of the flow control object meets the corresponding trigger condition, determining the resource or application program of which the calling relation has an effect on the preset running state index of the monitored flow control object according to the calling relation between each application program counted currently and the resource called in the running process;
determining the resource or application program which needs to be subjected to flow control from the determined resource or application program, and performing flow control;
the statistical calling relationship between each application program and the resource called in the running process specifically includes:
for each application program, adopting a mode of generating a resource calling relationship graph for the application program, and counting calling relationships among resources called by the application program in the running process and calling relationships among other application programs and the resources:
characterizing an entry of the application program through an application program entry vertex of the graph, and characterizing a call entry of the application program through a call entry vertex of the graph, wherein the call entry is used for providing an entry for other application programs to call resources of the application program; and are
Taking the inlet vertex of the application program as an initial point, taking at least one calling inlet vertex as a terminal point, and respectively connecting the initial point with at least one terminal point through a directed edge;
characterizing resources used by the application program in the running process through the resource vertexes of the graph; and are
For each calling process of at least one calling process in the running process of the application program, sequentially connecting the resources used in the calling process by the directed edges according to the calling sequence to generate a path corresponding to the calling process;
and for each path, determining a calling inlet corresponding to the calling process corresponding to the path, taking a calling inlet vertex representing the calling inlet as an initial point, taking an initial vertex of the path as a tail point, and connecting the initial point and the tail point through a directed edge to obtain a resource calling relation graph corresponding to the application program.
2. The method of claim 1, wherein the resources comprise one or more of: method, class, database, storage resource, CPU resource.
3. The method according to claim 1, wherein when it is monitored that a preset operation state index of the flow control object satisfies a corresponding trigger condition, determining a resource or an application program, of which a calling relationship has an effect on the monitored preset operation state index of the flow control object, according to a calling relationship between each application program and a resource called in an operation process of current statistics, specifically includes:
determining that the monitored index value of the preset operation state index of the flow control object reaches an index threshold value corresponding to the preset operation state index included in the flow control rule;
determining each application program which calls the monitored flow control object according to the call relation between each application program counted currently and the called resource in the running process, wherein the call of the monitored flow control object has an effect on the preset running state index of the monitored flow control object;
determining the resource or application program which needs to perform flow control from the determined resources or application programs, and performing flow control, wherein the method specifically comprises the following steps:
determining an application program of which the index value of the preset running state index reaches a corresponding use threshold value when the flow control object is called according to the use threshold values of the preset running state index respectively corresponding to the application programs included in the flow control rule when the monitored flow control object is called;
and limiting or stopping the determined application program from calling the monitored flow control object, so that the index value of the preset running state index is lower than the corresponding index threshold value when the monitored flow control object is called.
4. The method according to claim 1, wherein when it is monitored that a preset operation state index of the flow control object satisfies a corresponding trigger condition, determining a resource or an application program, of which a calling relationship has an effect on the monitored preset operation state index of the flow control object, according to a calling relationship between each application program and a resource called in an operation process of current statistics, specifically includes:
determining that the monitored index value of the preset operation state index of the flow control object reaches an index threshold value corresponding to the preset operation state index included in the flow control rule;
determining resources of other application programs which are called by the monitored flow control object and have an effect on the preset running state index of the monitored flow control object according to the calling relation between each application program counted currently and the resources called in the running process;
determining the resource or application program which needs to perform flow control from the determined resources or application programs, and performing flow control, wherein the method specifically comprises the following steps:
determining resources which cause index values of the preset operation state indexes of the monitored flow control objects to reach corresponding index threshold values from the determined resources;
and limiting or stopping the call of the monitored flow control object to the determined resource, so that the index value of the preset operation state index of the monitored flow control object is lower than the corresponding index threshold value.
5. The method according to claim 1, wherein when it is monitored that a preset operation state index of the flow control object satisfies a corresponding trigger condition, determining a resource or an application program, of which a calling relationship has an effect on the monitored preset operation state index of the flow control object, according to a calling relationship between each application program and a resource called in an operation process of current statistics, specifically includes:
determining whether preset resources need to be called when the monitored index value of the preset operation state index of the flow control object meets the flow control rule;
determining the resource which needs to monopolize the preset resource when the preset resource is called according to the calling relation between each application program which is counted currently and the resource called in the running process;
determining the resource or application program which needs to perform flow control from the determined resources or application programs, and performing flow control, wherein the method specifically comprises the following steps:
judging whether the determined resource is calling the preset resource or not;
and if so, stopping the monitored flow control object from calling the preset resource until the determined resource completes the calling of the preset resource.
6. The method of claim 1 or 2, wherein prior to monitoring the preset operating condition indicator of the flow control object, further comprising:
aiming at each running state index corresponding to each resource used by the application program in the running process, determining the index value of the running state index according to a preset statistical period; and are
Determining the index value of the running state index of the resource as the statistics of the time according to the index value of the running state index determined for the time and the index values of the running state index determined for a plurality of times before the time based on a preset moving average algorithm;
monitoring preset operation state indexes of the flow control object, and specifically comprising the following steps:
and monitoring the index value of the preset operation state index of the flow control object counted each time.
7. A method according to claim 1 or 2, wherein the operating condition indicators include one or more of the following:
response time, the number of concurrent threads, the query rate per second QPS, the abnormal statistics, and whether preset resources need to be called.
8. The method of claim 1 or 2, further comprising:
and receiving the flow control rule which is pushed by the flow control rule center and aims at least one flow control object.
9. A flow control device, comprising:
the monitoring module is used for monitoring the preset operation state index of the flow control object according to the flow control rule; the flow control object is a resource which needs to be subjected to access flow control in resources called by an application program in the running process; the flow control rule comprises a triggering condition for performing flow control on a corresponding flow control object, which is determined according to a preset operation state index of at least one flow control object;
the judging module is used for determining resources or application programs of which the calling relation has an effect on the monitored preset running state index of the flow control object according to the calling relation between each application program counted currently and the called resources in the running process when the monitoring module monitors that the preset running state index of the flow control object meets the corresponding triggering condition;
the flow control module is used for determining resources or application programs needing flow control from the resources or application programs determined by the judging module and controlling the flow;
the statistical module is used for counting the calling relationship among the resources called by the application program in the running process and the calling relationship among other application programs and the resources by adopting a mode of generating a resource calling relationship graph for the application program aiming at each application program: characterizing an entry of the application program through an application program entry vertex of the graph, and characterizing a call entry of the application program through a call entry vertex of the graph, wherein the call entry is used for providing an entry for other application programs to call resources of the application program; taking the inlet vertex of the application program as an initial point, taking at least one calling inlet vertex as a terminal point, and respectively connecting the initial point with at least one terminal point through a directed edge; characterizing resources used by the application program in the running process through the resource vertexes of the graph; for each calling process of at least one calling process in the running process of the application program, sequentially connecting the resources used in the calling process by the directed edges according to the calling sequence to generate a path corresponding to the calling process; and for each path, determining a calling inlet corresponding to the calling process corresponding to the path, taking a calling inlet vertex representing the calling inlet as an initial point, taking an initial vertex of the path as a tail point, and connecting the initial point and the tail point through a directed edge to obtain a resource calling relation graph corresponding to the application program.
10. The apparatus according to claim 9, wherein the determining module is specifically configured to determine that an index value of a preset operation state index of a monitored flow control object reaches an index threshold corresponding to the preset operation state index included in the flow control rule; determining each application program which calls the monitored flow control object according to the call relation between each application program counted currently and the called resource in the running process, wherein the call of the monitored flow control object has an effect on the preset running state index of the monitored flow control object;
the flow control module is specifically configured to determine, according to the usage threshold values of the preset operation state indexes respectively corresponding to each application program included in the flow control rule when the monitored flow control object is called, an application program for which an index value of the preset operation state index reaches the corresponding usage threshold value when the flow control object is called; and limiting or stopping the determined application program from calling the monitored flow control object, so that the index value of the preset running state index is lower than the corresponding index threshold value when the monitored flow control object is called.
11. The apparatus according to claim 9, wherein the determining module is specifically configured to determine that an index value of a preset operation state index of a monitored flow control object reaches an index threshold corresponding to the preset operation state index included in the flow control rule; determining resources which are called by the monitored flow control object and have an effect on the preset running state index of the monitored flow control object according to the calling relation between each application program counted currently and the resources called in the running process;
the flow control module is specifically configured to determine, from the determined resources, a resource that causes an index value of the preset operation state index of the monitored flow control object to reach a corresponding index threshold; and limiting or stopping the call of the monitored flow control object to the resources of the other application programs, so that the index value of the preset running state index of the monitored flow control object is lower than the corresponding index threshold value.
12. The apparatus according to claim 9, wherein the determining module is specifically configured to determine that what is included in the flow control rule when an index value of a preset operation state index of the monitored flow control object satisfies the flow control rule is that a preset resource needs to be called; determining the resource which needs to monopolize the preset resource when the preset resource is called according to the calling relation between each application program which is counted currently and the resource called in the running process;
the flow control module is specifically configured to determine whether the determined resource is calling the preset resource; and if so, stopping the monitored flow control object from calling the preset resource until the determined resource completes the calling of the preset resource.
13. The apparatus according to claim 9, wherein the statistical module is further configured to, before the monitoring module monitors a preset operation state indicator of the flow control object, determine, according to a preset statistical period, an index value of the operation state indicator for each operation state indicator corresponding to each resource used by the application program in an operation process; determining the index value of the running state index of the resource as the statistics of the time according to the index value of the running state index determined for the time and the index values of the running state index determined for a plurality of times before the time based on a preset moving average algorithm;
the monitoring module is specifically configured to monitor the index value of the preset operation state index of the flow control object counted each time by the counting module.
14. The apparatus of claim 9, further comprising: a receiving module;
the receiving module is used for receiving the flow control rule which is pushed by the flow control rule center and aims at least one flow control object.
CN201510663321.4A 2015-10-14 2015-10-14 Flow control method and device Active CN106603256B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510663321.4A CN106603256B (en) 2015-10-14 2015-10-14 Flow control method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510663321.4A CN106603256B (en) 2015-10-14 2015-10-14 Flow control method and device

Publications (2)

Publication Number Publication Date
CN106603256A CN106603256A (en) 2017-04-26
CN106603256B true CN106603256B (en) 2020-01-10

Family

ID=58553112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510663321.4A Active CN106603256B (en) 2015-10-14 2015-10-14 Flow control method and device

Country Status (1)

Country Link
CN (1) CN106603256B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111245732B (en) * 2018-11-29 2024-04-19 阿里巴巴集团控股有限公司 Flow control method, device and equipment
CN109413675A (en) * 2018-12-05 2019-03-01 斑马网络技术有限公司 Car networking flow control methods, device and car-mounted terminal
CN113179221B (en) * 2021-06-30 2021-09-21 北京浩瀚深度信息技术股份有限公司 Internet traffic control method and system
CN113765821A (en) * 2021-09-09 2021-12-07 南京优飞保科信息技术有限公司 Multi-dimensional access flow control system
CN114389905B (en) * 2021-12-08 2023-10-13 阿里巴巴(中国)有限公司 Network traffic statistics method, related device and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751293A (en) * 2008-12-16 2010-06-23 智邦科技股份有限公司 The method for managing thread group of program
CN102016873A (en) * 2008-06-24 2011-04-13 松下电器产业株式会社 Access control apparatus, access control program, and access control method
CN103701709A (en) * 2013-12-13 2014-04-02 北京京东尚科信息技术有限公司 Flow rate control method and system
CN104767689A (en) * 2014-01-07 2015-07-08 腾讯科技(深圳)有限公司 Method of controlling network access amount and server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102016873A (en) * 2008-06-24 2011-04-13 松下电器产业株式会社 Access control apparatus, access control program, and access control method
CN101751293A (en) * 2008-12-16 2010-06-23 智邦科技股份有限公司 The method for managing thread group of program
CN103701709A (en) * 2013-12-13 2014-04-02 北京京东尚科信息技术有限公司 Flow rate control method and system
CN104767689A (en) * 2014-01-07 2015-07-08 腾讯科技(深圳)有限公司 Method of controlling network access amount and server

Also Published As

Publication number Publication date
CN106603256A (en) 2017-04-26

Similar Documents

Publication Publication Date Title
CN106603256B (en) Flow control method and device
US11507430B2 (en) Accelerated resource allocation techniques
CA2780231C (en) Goal oriented performance management of workload utilizing accelerators
CN107770088B (en) Flow control method and device
US8424007B1 (en) Prioritizing tasks from virtual machines
US20150295970A1 (en) Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system
US9870269B1 (en) Job allocation in a clustered environment
KR20110080735A (en) Computing system and method
WO2017028696A1 (en) Method and device for monitoring load of distributed storage system
US8296418B2 (en) Optimized modification of a clustered computer system
CN111245732A (en) Flow control method, device and equipment
CN107038067B (en) Management method and device for processing resources in distributed stream processing
CN111209112A (en) Exception handling method and device
CN112887407B (en) Job flow control method and device for distributed cluster
CN111930516B (en) Load balancing method and related device
Hassan et al. Efficient resource scheduling for big data processing in cloud platform
CN111400045B (en) Load balancing method and device
CN112214299A (en) Multi-core processor and task scheduling method and device thereof
CN109086128B (en) Task scheduling method and device
US20080195447A1 (en) System and method for capacity sizing for computer systems
CN115529188B (en) Data processing method and device, storage medium and electronic equipment
CN105468494A (en) I/O intensive application identification method
CN111897785A (en) Work order quantity control method, device and equipment
US20170161114A1 (en) Method and apparatus for time-based scheduling of tasks
US10193823B2 (en) Rich resource management incorporating usage statistics for fairness

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
TR01 Transfer of patent right

Effective date of registration: 20211110

Address after: Room 554, floor 5, building 3, No. 969, Wenyi West Road, Wuchang Street, Yuhang District, Hangzhou City, Zhejiang Province

Patentee after: Taobao (China) Software Co., Ltd

Address before: P.O. Box 847, 4th floor, capital building, Grand Cayman, British Cayman Islands

Patentee before: Alibaba Group Holdings Limited

TR01 Transfer of patent right