Flow control method and device
By setting the target traffic range in the data processing equipment and adjusting the traffic allocation strategy, the traffic competition among components is solved and the service quality of the system is improved.
Patent Information
- Application Number
- CN202410089047.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-22
- Publication Date
- 2025-07-22
AI Technical Summary
In a multi-component system, sudden traffic increases lead to components competing for network card resources, affecting the system service quality.
By receiving traffic acquisition requests from the backend data processing components in the data processing equipment, determining their initial traffic and traffic growth gradients, setting the target traffic range, and adjusting the traffic allocation strategy based on traffic usage information to avoid traffic bursts and resource competition.
It effectively avoids traffic surges and resource competition between the back-end data processing components and the front-end data processing components, and improves the service quality of the system.
Smart Images

Figure CN120358201A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of this specification relate to the field of computer technology, and particularly to two traffic control methods. One or more embodiments of this specification simultaneously relate to two traffic control devices, a computing device, a computer-readable storage medium, and a computer program product to solve the technical defects existing in the prior art. Background Art
[0002] Generally, when a system including multiple components provides services, if the traffic used by the services exceeds the load capacity of the system, it will cause the paralysis of the services provided by the entire system. In order to ensure the stability of the external services provided by the system, traffic control can be used to provide a security firewall for the system.
[0003] The current solution is that when multiple components provide services, a separate traffic upper limit is set for each component, that is, each component has its own traffic upper limit, so as to ensure that the traffic used by the entire system does not exceed the load capacity of the system by determining that the traffic used by each component does not exceed the traffic upper limit.
[0004] However, in actual applications, when the traffic requested by one component surges, there may also be a situation where the traffic requested by other components surges. The surging traffic requests of multiple components lead to a situation where components compete for network card resources, affecting the service quality of the system. Therefore, it is necessary to provide a traffic control solution with higher service quality to solve the above technical problems. Summary of the Invention
[0005] In view of this, the embodiments of this specification provide two traffic control methods. One or more embodiments of this specification simultaneously relate to two traffic control devices, a computing device, a computer-readable storage medium, and a computer program product to solve the technical defects existing in the prior art.
[0006] According to the first aspect of the embodiments of this specification, a traffic control method is provided, which is applied to a data processing device. The data processing device includes a front-end data processing component and a back-end data processing component sharing a target network card. The method includes:
[0007] When traffic is allocated to the front-end data processing component, receive a traffic acquisition request from the back-end data processing component;
[0008] In response to the traffic acquisition request, determine the initial traffic and the traffic growth gradient of the back-end data processing component in the current traffic observation time window;
[0009] According to the initial traffic and the traffic growth gradient, determine the target traffic range within the current traffic observation time window;
[0010] Determine a traffic allocation policy according to the traffic usage information of the target traffic range by the backend data processing component, and determine the target traffic range within the next traffic observation time window according to the traffic allocation policy.
[0011] According to a second aspect of the embodiments of the present specification, another traffic control method is provided, which is applied to a data processing device. The data processing device includes a front-end data processing component and a backend data processing component sharing a target network card. The method includes:
[0012] In the case of receiving a data processing request sent by the front-end data processing component, perform traffic allocation to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and generate a backend data processing task during the execution of the data processing request, and trigger the backend data processing component to execute the backend data processing task;
[0013] Receive a traffic acquisition request sent by the backend data processing component when the backend data processing component executes the backend data processing task;
[0014] In response to the traffic acquisition request, determine the initial traffic and the traffic growth gradient of the backend data processing component in the current traffic observation time window;
[0015] Determine the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient;
[0016] Determine a traffic allocation policy according to the traffic usage information of the target traffic range by the backend data processing component, and determine the target traffic range within the next traffic observation time window according to the traffic allocation policy.
[0017] According to a third aspect of the embodiments of the present specification, a traffic control device is provided, including:
[0018] A first receiving module, configured to receive a traffic acquisition request from a backend data processing component when traffic allocation is performed to a front-end data processing component;
[0019] A first determining module, configured to determine the initial traffic and the traffic growth gradient of the backend data processing component in the current traffic observation time window in response to the traffic acquisition request;
[0020] A second determining module, configured to determine the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient;
[0021] A third determination module, configured to determine a traffic allocation policy according to the traffic usage information of the backend data processing component for the traffic within the target traffic range, and determine the target traffic range within the next traffic observation time window according to the traffic allocation policy.
[0022] According to a fourth aspect of the embodiments of the present specification, another traffic control device is provided, including:
[0023] A task trigger module, configured to allocate traffic to the front-end data processing component when receiving a data processing request sent by the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and generate a backend data processing task during the execution of the data processing request, and trigger the backend data processing component to execute the backend data processing task;
[0024] A second receiving module, configured to receive a traffic acquisition request sent by the backend data processing component when executing the backend data processing task;
[0025] A fourth determination module, configured to determine the initial traffic and traffic growth gradient of the backend data processing component in the current traffic observation time window in response to the traffic acquisition request;
[0026] A fifth determination module, configured to determine the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient;
[0027] A sixth determination module, configured to determine a traffic allocation policy according to the traffic usage information of the backend data processing component for the traffic within the target traffic range, and determine the target traffic range within the next traffic observation time window according to the traffic allocation policy.
[0028] According to a fifth aspect of the embodiments of the present specification, a computing device is provided, including:
[0029] A memory and a processor;
[0030] The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions, and when the computer-executable instructions are executed by the processor, the steps of the above traffic control method are implemented.
[0031] According to a sixth aspect of the embodiments of the present specification, a computer-readable storage medium is provided, which stores computer-executable instructions, and when the instructions are executed by a processor, the steps of the above traffic control method are implemented.
[0032] According to a seventh aspect of the embodiments of the present specification, there is provided a computer program product, including a computer program / instructions, which when executed by a processor, implement the steps of the above-mentioned traffic control method.
[0033] An embodiment of the present specification provides a traffic control method, which is applied to a data processing device. The data processing device includes a front-end data processing component and a back-end data processing component sharing a target network card. In the case where the target network card distributes traffic to the front-end data processing component, this method receives a traffic acquisition request from the back-end data processing component to determine that there is a traffic acquisition request from the back-end data processing component that competes with the front-end data processing component for network card resources. According to this traffic acquisition request, determine the initial traffic and traffic growth gradient of the back-end data processing component in the current traffic observation window, and according to the initial traffic and traffic growth gradient, determine the target traffic range of the back-end data processing component within the current traffic observation time window, so as to limit the traffic control of the back-end data processing component within the current traffic observation time window, that is, within the current traffic observation time window, only allow the back-end data processing component to use traffic within the target traffic range of the current traffic observation time window. After that, determine the traffic distribution strategy according to the traffic usage information of the back-end data processing component for the target traffic range within the current traffic observation time window, and according to the traffic distribution strategy, determine the target traffic range within the next traffic observation time window to implement traffic control within the next traffic observation time window, and the traffic distribution strategy of the back-end data processing component within the next traffic observation time window is determined by the traffic usage information of the target traffic range within the current traffic observation time window, realizing a controllable target traffic range with the traffic observation time window, avoiding sudden increase in the traffic used by the back-end data processing component, and avoiding the situation of competing for network card resources between the back-end data processing component and the above-mentioned front-end data processing component, thereby improving the service quality of the entire data processing device. Description of the Drawings
[0034] Figure 1 It is a schematic diagram of the traffic upper limit curve of a traffic control method provided by an embodiment of the present specification;
[0035] Figure 2 It is a schematic diagram of the traffic resonance curve of a traffic control method provided by an embodiment of the present specification;
[0036] Figure 3 It is a schematic diagram of a specific scenario of a traffic control method provided by an embodiment of the present specification;
[0037] Figure 4 It is a flowchart of a traffic control method provided by an embodiment of the present specification;
[0038] Figure 5 It is a flowchart of another flow control method provided by an embodiment of this specification;
[0039] Figure 6 It is a schematic diagram of a flow control curve of a flow control method provided by an embodiment of this specification;
[0040] Figure 7 It is a schematic structural diagram of a flow control device provided by an embodiment of this specification;
[0041] Figure 8 It is a schematic structural diagram of another flow control device provided by an embodiment of this specification;
[0042] Figure 9 It is a block diagram of the structure of a computing device provided by an embodiment of this specification. Detailed implementation manners
[0043] In the following description, many specific details are set forth in order to provide a thorough understanding of this specification. However, this specification can be implemented in many other ways different from those described herein, and those skilled in the art can make similar generalizations without departing from the connotation of this specification. Therefore, this specification is not limited by the specific implementations disclosed below.
[0044] The terms used in one or more embodiments of this specification are for the purpose of describing specific embodiments only and are not intended to limit one or more embodiments of this specification. The singular forms "a", "the", and "said" used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms unless the context clearly dictates otherwise. It should also be understood that the term "and / or" used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more of the associated listed items.
[0045] It should be understood that although the terms first, second, etc. may be used in one or more embodiments of this specification to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of one or more embodiments of this specification, the first may also be referred to as the second, and similarly, the second may also be referred to as the first. Depending on the context, the word "if" as used herein may be interpreted as "when" or "while" or "in response to determining".
[0046] In addition, it should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in one or more embodiments of this specification are all information and data authorized by the user or fully authorized by all parties. Moreover, the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions, and corresponding operation entrances are provided for users to choose to authorize or refuse.
[0047] First, the noun terms involved in one or more embodiments of this specification are explained.
[0048] Distributed storage system: Software that runs on multiple servers and works collaboratively, providing a programming interface similar to a block device, such as a block read / write interface.
[0049] Storage cluster: Multiple storage servers that are combined through software to provide storage services externally.
[0050] Throttle: A technology used to control the maximum traffic that a service component can use.
[0051] Water level: Used to record the proportion of the actual storage space used in the storage cluster to the overall storage space of the cluster.
[0052] LSM: Log-Structured Merge-Tree, a data organization method that combines logs and memory. Data writing only appends and does not overwrite.
[0053] BlockServer service component: In a distributed block storage system, a service component used to process user read / write requests and store user data.
[0054] BlockGCWorker service component: A garbage collection component whose main responsibilities are to assist BlockServer in garbage collection, including executing garbage collection tasks, managing memory space, etc.; when storing data in the LSM data organization method, since user writes through BlockServer are written to new locations in an append-write manner, the historical data in the old locations becomes garbage and needs to be cleaned up and recycled to free up storage space.
[0055] Client: The client of a distributed system that receives user requests and provides interfaces for users to write data to the cloud disk of the distributed system.
[0056] Generally, a distributed storage system based on LSM contains multiple servers. There is a situation where multiple components on one server use the same network card when processing data. For example, the BlockServer service component and the BlockGCWorker service component deployed on one server. The BlockServer service component is used to process user read and write requests and store user data. The BlockGCWorker service component is used to recycle historical data (i.e., garbage data) generated when users write new data in the LSM data organization method.
[0057] To ensure that each service component does not use excessive traffic and thus squeeze other services, both the BlockServer service component and the BlockGCWorker service component will pre-set a throttle to limit the upper limit of the traffic that each service component can use (i.e., the throttle upper limit).
[0058] See Figure 1 , Figure 1 is a schematic diagram of the traffic upper limit curve of a traffic control method provided by an embodiment of this specification. As Figure 1 shown, Figure 1 shows the traffic upper limit setting methods of the BlockGCWorker service component and the BlockServer service component, including the throttle upper limit curve of the BlockGCWorker service component (i.e., Figure 1 the curve of the traffic upper limit of the backend data processing component in Figure 1 ), the throttle upper limit curve of the BlockServer service component (i.e., Figure 1 the curve of the traffic upper limit of the frontend data processing component in
[0059] Specifically, the throttle upper limit of the BlockGCWorker service component is dynamically set according to the storage water level of the storage cluster of the distributed storage system. For example, as Figure 1As shown by the corresponding curve of BlockGCWorker throttle, when the cluster water level utilization rate is less than 50%, the throttle upper limit is set to 200 MB / s; when the cluster water level utilization rate is above 80%, the throttle upper limit is set to 700 MB / s; when the cluster water level utilization rate is between 50% and 80%, the throttle upper limit is set to increase linearly from 200 MB / s to 700 MB / s; the throttle upper limit of the BlockServer service component is set to a fixed threshold, such as 1000 MB / s; the difference between the actual traffic curve of BlockGCWorker and the throttle upper limit curve of the BlockGCWorker service component is the upper limit of the sudden increase in traffic that can occur when the BlockGCWorker service component processes data.
[0060] Generally, when the application is not in the peak period, the actual traffic used by the BlockGCWorker service component and the BlockServer service component is relatively low.
[0061] However, when the application is in the peak period, when the application traffic received by the BlockServer service component suddenly increases, the actual traffic used by the BlockServer service component will suddenly increase and reach the set throttle upper limit. In this case, due to the sudden increase in the application traffic of the user, the amount of data written by the user also suddenly increases, and the amount of garbage data that needs to be processed by the BlockGCWorker service component suddenly increases, resulting in a sudden increase in the actual traffic used by the BlockGCWorker service component, and a traffic resonance problem occurs between the BlockServer service component and the BlockGCWorker service component.
[0062] See Figure 2 , Figure 2 is a schematic diagram of the traffic resonance curve of a traffic control method provided by an embodiment of this specification. As Figure 2 shown, Figure 2 shows the schematic curve of the traffic resonance between the BlockGCWorker service component and the BlockServer service component, including the throttle upper limit curve of the BlockGCWorker service component (i.e., Figure 2 the curve of the traffic upper limit of the backend data processing component in Figure 2 ), the throttle upper limit curve of the BlockServer service component (i.e., Figure 2The curve of the actual traffic of the backend data processing component in [[]], the curve of the actual traffic used by the BlockServer service component (i.e., Figure 2 the curve of the actual traffic of the frontend data processing component in [[]]), as Figure 2 shown in Figure 2 In [[]], the actual traffic used by the BlockGCWorker service component and the actual traffic used by the BlockServer service component have a traffic surge resonance problem.
[0063] Due to the traffic surge resonance problem of the two service components, the two service components will compete for the resources of the network card, resulting in a decline in the external service quality of the entire system.
[0064] In view of this, in this specification, two traffic control methods are provided. One or more embodiments of this specification are simultaneously related to two traffic control devices, a computing device, a computer-readable storage medium, and a computer program product to solve the technical defects existing in the prior art.
[0065] See Figure 3 , Figure 3 shows a schematic diagram of a specific scenario of a traffic control method provided by an embodiment of this specification.
[0066] As Figure 3 shown in Figure 3 The data processing system shown in [[]] includes a client 302 and a server 304. The server 304 is deployed with a frontend data processing component 3042, a backend data processing component 3044, and a network card 3046. Among them, the client 302 includes but is not limited to mobile phones, tablet computers, laptop computers, desktop computers, etc., the server 304 includes but is not limited to cloud servers or physical servers, the frontend data processing component 3042 / backend data processing component 3044 includes but is not limited to hardware components, software components, etc., and the network card 3046 includes but is not limited to physical network cards, cloud network cards, etc.
[0067] Specifically, when the user performs operations such as data storage and data processing on the client 302, the client 302 sends a user request to the server 304. The frontend data processing component 3042 in the server 304 determines a data processing request according to the user request. After the server 304 determines the data processing request of the frontend data processing component 3042, it allocates traffic to the frontend data processing component 3042 through the network card 3046. In the case where the network card 3046 allocates traffic to the frontend data processing component 3042, it receives a traffic acquisition request sent by the backend data processing component 3044 and, according to the traffic control method in the embodiment of this specification, allocates the traffic after traffic control to the backend data processing component for processing the backend data.
[0068] Specifically, the network card 3046 first determines the backend data processing component 3044, and determines the initial traffic and traffic growth gradient of the backend data processing component 3044 within the current traffic observation time window (i.e., the traffic observation window in Figure 3 ). According to the initial traffic and traffic growth gradient, it determines the target traffic range within the current traffic observation time window, and within the current traffic observation time window, allocates traffic to the backend data processing component 3044 according to the target traffic range of the current traffic observation time window. The backend data processing component 3044 can then use the allocated traffic within the current traffic observation time window. After that, the network card 3046 determines the traffic allocation strategy according to the traffic usage information when the backend data processing component 3044 uses the allocated traffic, and determines the target traffic range within the next traffic observation time window based on this, thereby realizing the traffic control of the traffic used by the network card 3046 for the backend data processing component 3044.
[0069] The traffic control method provided by the embodiments of this specification, in the case where the network card allocates traffic to the frontend data processing component, receives the traffic acquisition request of the backend data processing component to determine the traffic acquisition request of the backend data processing component that competes with the frontend data processing component for network card resources. According to this traffic acquisition request, it determines the initial traffic and traffic growth gradient of the backend data processing component within the current traffic observation window, and determines the target traffic range of the backend data processing component within the current traffic observation time window according to the initial traffic and traffic growth gradient, so as to limit the traffic control of the backend data processing component within the current traffic observation time window, that is, within the current traffic observation time window, only allows the backend data processing component to use traffic within the target traffic range of the current traffic observation time window. After that, it determines the traffic allocation strategy according to the traffic usage information of the backend data processing component for the target traffic range within the current traffic observation time window, and determines the target traffic range within the next traffic observation time window according to the traffic allocation strategy, realizing the traffic control within the next traffic observation time window. Moreover, the traffic allocation strategy of the backend data processing component within the next traffic observation time window is determined by the traffic usage information of the target traffic range within the current traffic observation time window, realizing a controllable target traffic range with the traffic observation time window, avoiding sudden increases in the traffic used by the backend data processing component, and avoiding the situation of resource contention between the backend data processing component and the above-mentioned frontend data processing component, thereby improving the service quality of the entire data processing device.
[0070] See Figure 4 , Figure 4It is a flowchart of a traffic control method provided by an embodiment of this specification, which is applied to a data processing device. The data processing device includes a front-end data processing component and a back-end data processing component that share a target network card. The method specifically includes the following steps.
[0071] Step 402: When allocating traffic to the front-end data processing component, receive a traffic acquisition request from the back-end data processing component.
[0072] Among them, the data processing device can be understood as any device capable of realizing data processing, including but not limited to terminals, servers, etc. For example, the data processing device can be understood as a laptop, a desktop computer, an independent physical server, a server cluster composed of multiple physical servers, a cloud server, etc.
[0073] The front-end data processing component can be understood as a service component in the data processing device that is used to process user read and write requests and store user data; the back-end data processing component can be understood as a component in the data processing device that is used to assist the front-end data processing component and perform data processing at the back end. It should be noted that the back-end data processing component can be one or more. In this specification, an example where the back-end data processing component is one is used for explanation, but it is not limited to this. The specific implementation method when the back-end data processing component is multiple can be referred to in the embodiments of this specification.
[0074] For example, when the data processing device is understood as a server of the above-mentioned LSM-based distributed storage system, the front-end data processing component can be understood as the above-mentioned BlockServer service component, and the back-end data processing component can be understood as the above-mentioned BlockGCWorker service component.
[0075] The traffic acquisition request can be understood as a request sent by the back-end data processing component to the data processing device to request the data processing device to allocate traffic.
[0076] In practical applications, when the data processing device receives a read and write request sent by the front-end data processing component, it will allocate traffic to the front-end data processing component. The specific implementation method is as follows:
[0077] Before receiving the traffic acquisition request from the back-end data processing component when allocating traffic to the front-end data processing component, it further includes:
[0078] In the case of receiving a data processing request sent by the front-end data processing component, traffic is allocated to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and during the execution of the data processing request, a back-end data processing task is generated, and the back-end data processing component is triggered to execute the back-end data processing task.
[0079] Among them, the data processing request can be understood as a request generated by the data processing system for data processing in response to the user's data operation instruction on the client; the back-end data processing task can be understood as a data processing task to be executed by the back-end data processing component. Continuing with the above example, the data processing request can be understood as the user request sent by the client to the data processing device after the BlockServer service component performs operations such as data storage and data processing on the user at the client (i.e., the above-mentioned client), and the back-end data processing task can be understood as a garbage collection task.
[0080] In specific implementation, after the front-end data processing component of the data processing device receives the user's data processing instruction, a data processing request is generated. After the data processing device generates the data processing request, traffic is allocated to the front-end data processing component through the target network card. After the traffic allocation, the front-end data processing component can execute the data processing request according to the allocated traffic, and during the execution of the data processing request by the front-end data processing component, a back-end data processing task is generated, and the back-end data processing component is triggered to execute the back-end data processing task.
[0081] Specifically, when the front-end data processing component executes the data storage request, due to the increase in the amount of data written, the garbage collection task of the back-end data processing component is triggered, so that the back-end data processing component performs garbage collection to ensure the normal storage of data in the front-end data processing component.
[0082] The traffic control method provided in the embodiments of this specification allocates traffic to the front-end data processing component according to the data processing request sent by the front-end data processing component to ensure the normal implementation of the execution of the data processing request by the front-end data processing component, and when the front-end data processing component generates a back-end data processing task during the execution of the data processing request and triggers the back-end data processing component to execute the back-end data processing task, subsequent traffic control of the back-end data processing component is performed, so that the traffic used by the back-end data processing component during the execution of the back-end data processing task is smooth and does not suddenly increase, avoiding the occurrence of a resonance situation where the traffic used by the back-end data processing component suddenly increases with that of the front-end data processing component.
[0083] In practical applications, the backend data processing component will send a traffic acquisition request to the data processing device only when it is performing a backend data processing task. The specific implementation method is as follows:
[0084] Receiving the traffic acquisition request from the backend data processing component includes:
[0085] Receiving the traffic acquisition request sent by the backend data processing component when it is performing the backend data processing task.
[0086] Among them, the traffic acquisition request can be understood as a traffic acquisition request sent by the backend data processing component for this backend data processing task. This traffic acquisition request contains information about the backend data processing component and information about the backend data processing task, so that the subsequent data processing device can perform subsequent traffic allocation to the backend data processing component.
[0087] The traffic control method provided by the embodiments of this specification receives the traffic acquisition request sent by the backend data processing component when it is performing the backend data processing task, so as to control the traffic used by the backend data processing component subsequently, and further ensures the normal implementation of the data processing request executed by the front-end data processing component.
[0088] Step 404: In response to the traffic acquisition request, determine the initial traffic and the traffic growth gradient of the backend data processing component in the current traffic observation time window.
[0089] Among them, the current traffic observation time window can be understood as a preset current duration. During this time period, the data processing device can observe and control the traffic of this backend data processing component. For example, the current traffic observation time window can be understood as the current three minutes.
[0090] It should be noted that in order to ensure the smoothness of the traffic used by the backend data processing component, the setting of the current traffic observation time window needs to meet a preset duration range. For example, the current traffic observation time window cannot be less than one minute, and the current traffic observation time window cannot be higher than thirty minutes, etc. The specific preset duration range can be set according to actual needs, and the embodiments of this specification do not limit this.
[0091] The initial traffic of the backend data processing component in the current traffic observation time window can be understood as the basic flow control traffic (traffic of basic traffic control) of the backend data processing component in the current traffic observation time window, that is, the initial traffic of the backend data processing component when it is not performing data processing.
[0092] The traffic growth gradient can be understood as the traffic for presetting the traffic growth amplitude. For example, the traffic growth gradient can be set to 70MB / s.
[0093] In practical applications, the traffic growth gradient can also be determined according to a preset duration for the traffic to reach the traffic allocation upper limit. The specific implementation method is as follows:
[0094] Determining the initial traffic and traffic growth gradient of the backend data processing component in the current traffic observation time window in response to the traffic acquisition request includes:
[0095] In response to the traffic acquisition request, determining the initial traffic, preset traffic allocation upper limit, and traffic allocation duration for reaching the preset traffic allocation upper limit of the backend data processing component in the current traffic observation time window;
[0096] Determining the traffic growth gradient of the current traffic observation time window according to the current traffic observation time window, the preset traffic allocation upper limit, and the traffic allocation duration.
[0097] Among them, the preset traffic allocation upper limit can be understood as the upper limit of the traffic that the data processing device can allocate to a certain component; the traffic allocation duration for reaching the preset traffic allocation upper limit can be understood as a preset duration, which represents the preset total duration expected from the start of traffic allocation by the data processing device to a component until the allocated traffic reaches the upper limit of the traffic that the data processing device can allocate, assuming that the traffic allocation in each traffic observation window is higher than that in the previous traffic observation window.
[0098] Continuing with the above example, the preset traffic allocation upper limit of the backend data processing component can be understood as the throttle upper limit of the above-mentioned BlockGCWorker service component, and the traffic allocation duration for reaching the preset traffic allocation upper limit can be understood as the preset duration required to reach the throttle upper limit of the BlockGCWorker service component, assuming that the traffic allocated to the BlockGCWorker service component in each traffic observation time window is higher than that in the previous traffic observation time window.
[0099] After obtaining the traffic observation time window, the preset traffic allocation upper limit, and the traffic allocation duration, the traffic growth gradient can be determined according to the traffic observation time window, the preset traffic allocation upper limit, and the traffic allocation duration.
[0100] Specifically, the traffic growth gradient = preset traffic allocation upper limit / (traffic allocation duration / traffic observation time window). For example, if the traffic observation time window is 3 minutes, the preset traffic allocation upper limit is 700 MB / s, and the traffic allocation duration is 30 minutes, then the traffic growth gradient is 700 MB / s / (30 / 3) = 70 MB / s.
[0101] The traffic control method provided by the embodiments of this specification determines the traffic growth gradient of the current traffic observation time window by determining and based on the initial traffic, the preset traffic allocation upper limit, and the traffic allocation duration reaching the preset traffic allocation upper limit of the backend data processing component, ensuring the rationality of the traffic growth gradient setting, thereby improving the rationality of the subsequent target traffic range, and enabling the backend data processing component to rationally use traffic without competing with the frontend data processing component for network card resources.
[0102] Step 406: Determine the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient.
[0103] Among them, the target traffic range within the current traffic observation time window can be understood as the traffic range for allocating traffic to the backend data processing component within the current traffic observation time window, that is, the range of traffic allowed for the backend data processing component to use. Continuing with the above example, the target traffic range can be understood as the range of traffic allowed for the actual traffic used by the BlockGCWorker service component within the current traffic observation time window.
[0104] In practical applications, the specific implementation manner of determining the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient is as follows:
[0105] The determining the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient includes:
[0106] Determine the upper limit traffic within the current traffic observation time window according to the sum of the initial traffic and the traffic growth gradient;
[0107] Determine the lower limit traffic within the current traffic observation time window according to the difference between the initial traffic and the traffic growth gradient;
[0108] Determine the target traffic range within the current traffic observation time window according to the upper limit traffic and the lower limit traffic.
[0109] Among them, the upper limit traffic within the current traffic observation time window can be understood as the upper limit of the traffic allocated by the data processing device to the backend data processing component through the target network card within the current traffic observation time window; the lower limit traffic within the current traffic observation time window can be understood as the lower limit of the traffic allocated by the data processing device to the backend data processing component through the target network card within the current traffic observation time window.
[0110] In specific implementation, after determining the backend data processing component, the initial traffic in the current traffic window, and the traffic growth gradient, the initial traffic is used as the base flow control traffic, and the sum obtained by adding the initial traffic and the traffic growth gradient is determined as the upper limit traffic within the current traffic observation time window. The difference obtained by subtracting the traffic growth gradient from the initial traffic is determined as the lower limit traffic within the current traffic observation time window. The traffic range between the upper limit traffic and the lower limit traffic is determined as the target traffic range within the current traffic observation time window.
[0111] For example, if the initial traffic within the current traffic observation time window is 100 MB / s and the traffic growth gradient is 70 MB / s, then the upper limit traffic within the current traffic observation time window is 100 MB / s - 70 MB / s = 30 MB / s, and the lower limit traffic within the current traffic observation time window is 100 MB / s + 70 MB / s = 170 MB / s. Thus, the traffic range between the upper limit traffic and the lower limit traffic, i.e., 30 MB / s to 170 MB / s, is determined as the target traffic range within the current traffic observation time window.
[0112] The traffic control method provided by the embodiments of this specification determines the target traffic range through the sum of the initial traffic and the traffic growth gradient, as well as the difference between the initial traffic and the traffic growth gradient. Thus, it only allows the backend data processing component to probe the traffic with a traffic width equal to the traffic growth gradient upward or downward based on the current traffic observation window, avoiding sudden increases in the traffic used by the backend data processing component, and thus avoiding the situation of competing for network card resources between the backend data processing component and the frontend data processing component, improving the service quality.
[0113] Step 408: Determine a traffic allocation strategy according to the traffic usage information of the backend data processing component for the traffic within the target traffic range, and determine the target traffic range within the next traffic observation time window according to the traffic allocation strategy.
[0114] The traffic usage information can be understood as information including the traffic usage amounts corresponding to each time point of the current traffic observation time window when the backend data processing component uses the traffic within the target traffic range allocated to the data processing device within the current traffic observation time window.
[0115] Optionally, in order to improve the accuracy of the target traffic range determined for the next traffic observation time window, it can be achieved by controlling the durations of the current traffic observation time window and the next traffic observation time window to be the same, that is, the durations of the current traffic observation time window and the next traffic observation time window are the same.
[0116] The traffic control method provided by the embodiments of this specification determines a traffic allocation strategy based on the traffic usage information within the target traffic range by the backend data processing component, and determines the target traffic range within the next traffic observation time window according to the traffic allocation strategy, ensuring that the next traffic observation time window conforms to the trend of the traffic used by the backend data processing component. While avoiding sudden increases in the traffic of the backend data processing component, it ensures the normal data processing of the backend data processing component. Moreover, by ensuring that the duration of the current traffic observation time window is the same as that of the next traffic observation time window, it further improves the accuracy and rationality of traffic allocation for the next traffic observation time window of the backend data processing component.
[0117] In practical applications, the specific implementation of determining a traffic allocation strategy based on the traffic usage information within the target traffic range by the backend data processing component and determining the target traffic range within the next traffic observation time window according to the traffic allocation strategy is as follows:
[0118] The determining of a traffic allocation strategy based on the traffic usage information within the target traffic range by the backend data processing component and determining the target traffic range within the next traffic observation time window according to the traffic allocation strategy includes:
[0119] When it is determined that the traffic usage information within the target traffic range by the backend data processing component meets the first traffic allocation condition, determine the first traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the first traffic allocation strategy; or
[0120] When it is determined that the traffic usage information within the target traffic range by the backend data processing component meets the second traffic allocation condition, determine the second traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the second traffic allocation strategy; or
[0121] When it is determined that the traffic usage information within the target traffic range by the backend data processing component does not meet the first traffic allocation condition and the second traffic allocation condition, determine the third traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the third traffic allocation strategy.
[0122] Among them, the first traffic allocation condition and the second traffic allocation condition can be understood as conditions regarding the ratio of the actual traffic used by the backend data processing component to the target traffic range within the preset current traffic observation time window for the traffic within the target traffic range.
[0123] In specific implementation, after determining the target traffic range of the current traffic observation window, the data processing device can distribute the traffic within the target traffic range to the backend data processing components within the current traffic observation window, observe and determine the traffic usage information of the backend data processing components for the traffic within the target traffic range, and determine whether the traffic usage information of the backend data processing components for the traffic within the target traffic range meets the first traffic allocation condition or the second traffic allocation condition.
[0124] After that, according to the satisfied traffic allocation condition, determine the corresponding traffic allocation strategy, and according to the traffic allocation strategy, determine the target traffic range within the next traffic observation time window.
[0125] The traffic control method provided by the embodiments of this specification determines whether the traffic usage information of the backend data processing components for the traffic within the target traffic range meets the first traffic allocation condition or the second traffic allocation condition, and determines three traffic allocation strategies according to the judgment result, so as to determine the corresponding traffic allocation strategy for each traffic allocation condition, further improving the accuracy and rationality of determining the target traffic range within the next traffic observation time window.
[0126] In practical applications, the traffic can be allocated according to the percentage of the upper limit traffic or the lower limit traffic that reaches the target traffic range within the current traffic observation time window in the traffic usage information, so as to ensure the rationality of data processing by the backend data processing components.
[0127] Then, taking the percentage of the usage traffic that reaches the upper limit traffic of the target traffic range within the current traffic observation time window in the existing usage traffic as the condition, the specific implementation manner of the above steps is as follows:
[0128] The first traffic allocation condition is that there is usage traffic exceeding a preset percentage that reaches the upper limit traffic of the target traffic range within the current traffic observation time window;
[0129] Correspondingly, determining the first traffic allocation strategy and determining the target traffic range within the next traffic observation time window according to the first traffic allocation strategy includes:
[0130] Determine the first traffic allocation strategy, and determine the initial traffic of the next traffic observation time window according to the upper limit traffic of the target traffic range;
[0131] According to the initial traffic of the next traffic observation time window and the traffic growth gradient, determine the target traffic range within the next traffic observation time window.
[0132] Among them, the preset percentage can be set according to the actual situation, and this specification does not limit it. For example, the preset percentage can be set to 60%.
[0133] The first traffic allocation condition is that there is used traffic exceeding the preset percentage in the traffic usage information and reaching the upper limit of the target traffic range within the current traffic observation time window. It can be understood that within the current traffic observation time window, for the used traffic within the target traffic range by the backend data processing component, the duration corresponding to the used traffic reaching the upper limit of the target traffic range is greater than or equal to the proportion of the preset percentage of the current traffic observation window. For example, when the preset percentage is set to 60%, within the current traffic observation time window, the backend data processing component has 2.4 minutes during which the used traffic reaches 170 MB / s. 2.4 / 3 = 80%, which exceeds the preset percentage. That is, the proportion of the used traffic of the backend data processing component reaching the upper limit of the target traffic range of 170 MB / s exceeds the preset percentage of 60%. It is considered that the above determination of the traffic usage information of the backend data processing component within the target traffic range meets the first traffic allocation condition.
[0134] In specific implementation, within the current traffic observation time window, when the duration corresponding to the used traffic of the backend data processing component within the target traffic range and reaching the upper limit of the target traffic range occupies the preset percentage of the current traffic observation window, it is considered that within the current traffic observation time window, the traffic required by the backend data processing component is higher than the traffic allocated by the data processing device to the backend data processing component.
[0135] Then, the upper limit of the target traffic range can be determined as the initial traffic for the next traffic observation time window. After that, according to the initial traffic of the next traffic observation time window and the traffic growth gradient, the target traffic range within the next traffic observation time window is determined.
[0136] In practical applications, the specific implementation method of determining the target traffic range within the next traffic observation time window according to the initial traffic of the next traffic observation time window and the traffic growth gradient can also be achieved by referring to the specific implementation method of determining the target traffic range within the current traffic observation time window according to the initial traffic of the current traffic observation time window and the traffic growth gradient, that is, taking the sum of the initial traffic and the traffic growth gradient as the traffic upper limit, taking the difference between the initial traffic and the traffic growth gradient as the traffic lower limit, and determining the target traffic range according to the traffic upper limit and the traffic lower limit. The same applies to the following two other traffic allocation strategy cases, which will not be elaborated here.
[0137] Continuing with the above example, for instance, when the backend data processing component determines the traffic usage information within the target traffic range and meets the first traffic allocation condition, it determines the upper limit traffic of 170 MB / s in the target traffic range as the initial traffic for the next traffic observation time window. Subsequently, based on the initial traffic of 170 MB / s in the next traffic observation time window and the traffic growth gradient of 70 MB / s, it determines the target traffic range within the next traffic observation time window as 100 MB / s to 240 MB / s. Compared with the target traffic range of 30 MB / s to 170 MB / s within the current traffic observation time window, the data processing device allocates 70 MB / s more traffic width.
[0138] Preferably, according to the initial traffic of each traffic observation time window and the traffic growth gradient, the specific implementation method of determining the target traffic range within each traffic observation time window can adopt the same logic to improve the accuracy of traffic control.
[0139] In the traffic control method provided by the embodiments of this specification, when there is a usage traffic exceeding a preset percentage in the traffic usage information of the backend data processing component for the traffic within the target traffic range and reaching the upper limit traffic of the target traffic range within the current traffic observation time window, it indicates that the currently allocated traffic is insufficient to support the data processing of the backend data processing component. Then, the upper limit traffic of the target traffic range within the current traffic observation time window can be determined as the initial traffic for the next traffic observation time window. Thus, based on the initial traffic of the next traffic observation time window and the traffic growth gradient, the target traffic range within the next traffic observation time window is determined, further improving the rationality of the target traffic range within the next traffic observation time window.
[0140] And taking the percentage of the usage traffic in the traffic usage information reaching the lower limit traffic of the target traffic range within the current traffic observation time window as a condition, the specific implementation method of the above steps is described as follows:
[0141] The second traffic allocation condition is that there is a usage traffic exceeding a preset percentage in the traffic usage information and reaching the lower limit traffic of the target traffic range within the current traffic observation time window;
[0142] Correspondingly, determining the second traffic allocation strategy and, based on the second traffic allocation strategy, determining the target traffic range within the next traffic observation time window includes:
[0143] Determining the second traffic allocation strategy and, based on the lower limit traffic of the target traffic range, determining the initial traffic of the next traffic observation time window;
[0144] Determine the target traffic range within the next traffic observation time window according to the initial traffic of the next traffic observation time window and the traffic growth gradient.
[0145] Among them, the second traffic allocation condition is that there is more than a preset percentage of used traffic in the traffic usage information that reaches the upper limit traffic of the target traffic range within the current traffic observation time window. It can be understood that within the current traffic observation time window, for the used traffic within the target traffic range by the backend data processing component, the duration corresponding to the used traffic that reaches the lower limit traffic of the target traffic range occupies a ratio greater than or equal to the preset percentage of the current traffic observation window. For example, the preset percentage is set to 60%. Within the current traffic observation time window, the backend data processing component has 2.4 minutes when the used traffic reaches 30 MB / s. 2.4 / 3 = 80%, which exceeds the preset percentage. That is, the ratio of the used traffic of the backend data processing component that reaches the lower limit traffic of the target traffic range of 30 MB / s exceeds the preset percentage of 60%. It is considered that the above determination of the traffic usage information of the backend data processing component within the target traffic range meets the second traffic allocation condition.
[0146] Specifically, for the specific implementation manner of the embodiments of this specification, reference may be made to the specific implementation manner of the above-mentioned embodiments of the specification. The difference is only that the reference data in the traffic allocation condition is different, and as a result, the initial traffic of the next traffic observation time in the embodiments of this specification is determined differently by the lower limit traffic of the target traffic range. The embodiments of this specification will not elaborate on this.
[0147] For the traffic control method provided by the embodiments of this specification, when there is more than a preset percentage of used traffic in the traffic usage information of the backend data processing component within the target traffic range that reaches the lower limit traffic of the target traffic range within the current traffic observation time window, it can be explained that the currently allocated traffic is in an overflow state relative to the data processing of the backend data processing component. Then, the lower limit traffic of the target traffic range within the current traffic observation time window can be determined as the initial traffic of the next traffic observation time window. Thus, according to the initial traffic of the next traffic observation time window and the traffic growth gradient, the target traffic range within the next traffic observation time window is determined, further improving the rationality of the target traffic range within the next traffic observation time window.
[0148] In addition, when the above first traffic allocation condition and second traffic allocation condition are not met, that is, the traffic usage situation tends to remain unchanged, the specific implementation manner of the above steps is as follows:
[0149] The determination of the third traffic allocation strategy and the determination of the target traffic range within the next traffic observation time window according to the third traffic allocation strategy include:
[0150] Determine the third traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the target traffic range within the current traffic observation time window.
[0151] Specifically, in the case where the above first traffic allocation condition and second traffic allocation condition are not satisfied, the target traffic range within the current traffic observation time window is determined as the target traffic range within the next traffic observation time window.
[0152] The traffic control method provided by the embodiments of this specification, by determining the target traffic range within the current traffic observation time window as the target traffic range within the next traffic observation time window when the first traffic allocation condition and the second traffic allocation condition are not satisfied, to achieve that the target traffic range of the next traffic observation time window remains without the need to adjust the target traffic range, and further improve the rationality of the target traffic range within the next traffic observation time window.
[0153] In practical applications, after determining the target traffic range of the next traffic observation time window as described above, it is also possible to continue to determine backward to achieve dynamic traffic control. The specific implementation method is as follows:
[0154] After determining the target traffic range within the next traffic observation time window, it further includes:
[0155] Determine the next traffic observation time window as the current traffic observation time window, and continue to execute the steps of determining the traffic allocation strategy according to the traffic usage information of the traffic within the target traffic range by the backend data processing component, and determining the target traffic range within the next traffic observation time window according to the traffic allocation strategy, until the response to the traffic acquisition request sent by the backend data processing component is completed.
[0156] Specifically, after determining the target traffic range within the next traffic observation time window as described above, the data processing device can allocate corresponding traffic to the backend data processing component to achieve traffic control.
[0157] Furthermore, determining the determined next traffic observation time window as the current traffic observation time window, and according to the initial traffic, traffic growth gradient of the determined current traffic observation time window, and determining the traffic usage information of the traffic within the target traffic range by the backend data processing component, the traffic control of the next traffic observation time window corresponding to the current traffic observation time window can be achieved. The specific implementation method can refer to the embodiments of the above specification.
[0158] The traffic control method provided by the embodiments of this specification realizes the dynamic traffic control of the backend data processing component by determining the target traffic range within the next traffic observation time window, then determining the next traffic observation time window as the current traffic observation window, and continuing the above steps. This ensures that the entire process of the backend data processing component using traffic is smooth and without sudden increases, guarantees the normal use of traffic by the frontend data processing component, and thus improves the service quality provided by the entire data processing device.
[0159] The traffic control method provided by the embodiments of this specification, when the target network card allocates traffic to the frontend data processing component, receives the traffic acquisition request of the backend data processing component to determine the traffic acquisition request of the backend data processing component that competes with the frontend data processing component for network card resources. According to this traffic acquisition request, it determines the initial traffic and traffic growth gradient of the backend data processing component within the current traffic observation window, and based on the initial traffic and traffic growth gradient, determines the target traffic range of the backend data processing component within the current traffic observation time window to limit the traffic control of the backend data processing component within the current traffic observation time window. That is, within the current traffic observation time window, only allows the backend data processing component to use traffic within the target traffic range within the current traffic observation time window. Then, according to the traffic usage information of the backend data processing component for the target traffic range within the current traffic observation time window, it determines the traffic allocation strategy, and based on the traffic allocation strategy, determines the target traffic range within the next traffic observation time window to realize the traffic control within the next traffic observation time window. Moreover, the traffic allocation strategy of the backend data processing component within the next traffic observation time window is determined by the traffic usage information of the target traffic range within the current traffic observation time window, realizing a controllable target traffic range with the traffic observation time window, avoiding sudden increases in the traffic used by the backend data processing component, and avoiding the situation of competing for network card resources between the backend data processing component and the above-mentioned frontend data processing component, thereby improving the service quality of the entire data processing device.
[0160] See Figure 5 , Figure 5 is a flowchart of another traffic control method provided by an embodiment of this specification, applied to a data processing device. The data processing device includes a frontend data processing component and a backend data processing component sharing a target network card. The method specifically includes the following steps.
[0161] Step 502: In the case of receiving a data processing request sent by the front-end data processing component, allocate traffic to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and during the execution of the data processing request, generate a back-end data processing task, and trigger the back-end data processing component to execute the back-end data processing task.
[0162] Step 504: Receive a traffic acquisition request sent by the back-end data processing component when executing the back-end data processing task.
[0163] Step 506: In response to the traffic acquisition request, determine the initial traffic and the traffic growth gradient of the back-end data processing component in the current traffic observation time window.
[0164] Optionally, the determining the initial traffic and the traffic growth gradient of the back-end data processing component in the current traffic observation time window in response to the traffic acquisition request includes:
[0165] In response to the traffic acquisition request, determine the initial traffic, the preset traffic allocation upper limit, and the traffic allocation duration to reach the preset traffic allocation upper limit of the back-end data processing component in the current traffic observation time window;
[0166] According to the current traffic observation time window, the preset traffic allocation upper limit, and the traffic allocation duration, determine the traffic growth gradient of the current traffic observation time window.
[0167] Step 508: According to the initial traffic and the traffic growth gradient, determine the target traffic range within the current traffic observation time window.
[0168] Optionally, the determining the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient includes:
[0169] According to the sum of the initial traffic and the traffic growth gradient, determine the upper limit traffic within the current traffic observation time window;
[0170] According to the difference between the initial traffic and the traffic growth gradient, determine the lower limit traffic within the current traffic observation time window;
[0171] According to the upper limit traffic and the lower limit traffic, determine the target traffic range within the current traffic observation time window.
[0172] Step 510: Determine a traffic allocation strategy based on the traffic usage information of the target traffic range by the backend data processing component, and determine the target traffic range within the next traffic observation time window according to the traffic allocation strategy.
[0173] Optionally, the duration of the current traffic observation time window is the same as that of the next traffic observation time window.
[0174] Optionally, the determining of the traffic allocation strategy based on the traffic usage information of the target traffic range by the backend data processing component and determining the target traffic range within the next traffic observation time window according to the traffic allocation strategy includes:
[0175] When it is determined that the traffic usage information of the target traffic range by the backend data processing component meets the first traffic allocation condition, determine the first traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the first traffic allocation strategy; or
[0176] When it is determined that the traffic usage information of the target traffic range by the backend data processing component meets the second traffic allocation condition, determine the second traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the second traffic allocation strategy; or
[0177] When it is determined that the traffic usage information of the target traffic range by the backend data processing component does not meet the first traffic allocation condition and the second traffic allocation condition, determine the third traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the third traffic allocation strategy.
[0178] Optionally, the first traffic allocation condition is that there is a usage traffic exceeding a preset percentage in the traffic usage information, reaching the upper limit traffic of the target traffic range within the current traffic observation time window;
[0179] Correspondingly, the determining of the first traffic allocation strategy and determining the target traffic range within the next traffic observation time window according to the first traffic allocation strategy includes:
[0180] Determine the first traffic allocation strategy, and determine the initial traffic of the next traffic observation time window according to the upper limit traffic of the target traffic range;
[0181] Determine the target traffic range within the next traffic observation time window according to the initial traffic of the next traffic observation time window and the traffic growth gradient.
[0182] Optionally, the second traffic allocation condition is that there is more than a preset percentage of used traffic in the traffic usage information, reaching the lower limit traffic of the target traffic range within the current traffic observation time window;
[0183] Correspondingly, determining the second traffic allocation policy and, according to the second traffic allocation policy, determining the target traffic range within the next traffic observation time window includes:
[0184] Determining the second traffic allocation policy and, according to the lower limit traffic of the target traffic range, determining the initial traffic within the next traffic observation time window;
[0185] According to the initial traffic within the next traffic observation time window and the traffic growth gradient, determining the target traffic range within the next traffic observation time window.
[0186] Optionally, determining the third traffic allocation policy and, according to the third traffic allocation policy, determining the target traffic range within the next traffic observation time window includes:
[0187] Determining the third traffic allocation policy and, according to the target traffic range within the current traffic observation time window, determining the target traffic range within the next traffic observation time window.
[0188] Optionally, after determining the target traffic range within the next traffic observation time window, it further includes:
[0189] Determining the next traffic observation time window as the current traffic observation time window and continuing to execute the step of determining the traffic allocation policy according to the traffic usage information within the target traffic range by the backend data processing component and, according to the traffic allocation policy, determining the target traffic range within the next traffic observation time window until the response to the traffic acquisition request sent by the backend data processing component is completed.
[0190] The traffic control method provided by the embodiments of this specification distributes traffic to the front-end data processing component according to the data processing request sent by the front-end data processing component, so as to ensure the normal implementation of the data processing request by the front-end data processing component. During the execution of the data processing request by the front-end data processing component, a back-end data processing task is generated, and when the back-end data processing component is triggered to execute the back-end data processing task, the traffic acquisition request of the back-end data processing component is received, and subsequent traffic control of the back-end data processing component is performed, so that the traffic used by the back-end data processing component during the execution of the back-end data processing task is smooth and does not suddenly increase, avoiding the sudden increase resonance situation between the traffic used by the back-end data processing component and the front-end data processing component; moreover, according to the traffic acquisition request, the initial traffic and traffic growth gradient of the back-end data processing component in the current traffic observation window are determined, and the target traffic range of the back-end data processing component within the current traffic observation time window is determined, realizing traffic control of the back-end data processing component within the current traffic observation time window. Then, according to the traffic usage information of the back-end data processing component for the target traffic range within the current traffic observation time window, a traffic distribution strategy is determined, and according to the traffic distribution strategy, the target traffic range within the next traffic observation time window is determined, realizing a controllable target traffic range with the traffic observation time window, avoiding sudden increase in the traffic used by the back-end data processing component, and thus avoiding the situation of sudden increase resonance and competing for network card resources between the back-end data processing component and the above-mentioned front-end data processing component, thereby improving the service quality of the entire data processing device.
[0191] The above is a schematic solution of another traffic control method of this embodiment. It should be noted that the technical solution of this traffic control method and the technical solution of the above-mentioned traffic control method belong to the same concept. For the details not described in detail in the technical solution of this traffic control method, reference can be made to the description of the technical solution of the above-mentioned traffic control method.
[0192] The following combination Figure 6 , taking the application of the traffic control method provided by the embodiments of this specification in a distributed storage system based on LSM as an example, further illustrates the traffic control method. Among them, Figure 6 is a schematic diagram of the traffic control curve of a traffic control method provided by an embodiment of this specification. Specifically, taking the traffic control method provided by the embodiments of this specification and applied to a storage server (hereinafter referred to as the server for convenience of description) deployed in a distributed storage system based on LSM, which includes a BlockGCWorker service component (i.e., the back-end data processing component) and a BlockServer service component (i.e., the front-end data processing component) as an example, the explanation is as follows.
[0193] Specifically,Figure 6 It includes the throttle upper limit curve of the BlockGCWorker service component (i.e., the preset traffic allocation upper limit of the backend data processing component in the above-mentioned specification embodiments, such as Figure 6 shown by the traffic upper limit curve of the backend data processing component in ), the throttle upper limit curve of the BlockServer service component (i.e., the preset traffic allocation upper limit of the frontend data processing component in the above-mentioned specification embodiments, such as Figure 6 shown by the traffic upper limit curve of the frontend data processing component in ), the actual used traffic curve of the BlockServer service component (i.e., the used traffic of the frontend data processing component in the above-mentioned specification embodiments, such as Figure 6 shown by the actual traffic of the frontend data processing component in ), and the basic flow control curve corresponding to each traffic observation window of BlockGCWorker (i.e., the above-mentioned traffic observation time window), which is the initial traffic corresponding to the backend data processing component and each traffic observation window in the above-mentioned specification embodiments, such as Figure 6 shown by the actual traffic curve of the backend data processing component in .
[0194] Furthermore, the throttle upper limit of the BlockGCWorker service component is dynamically set according to the storage water level of the cluster. For example, as Figure 6 shown by the corresponding curve of gcworkerthrottle in , when the cluster water level utilization rate is less than 50%, the throttle upper limit is set to 200MB / s; when the cluster water level utilization rate is above 80%, the throttle upper limit is set to 700MB / s; when the cluster water level utilization rate is between 50% and 80%, the throttle upper limit is linearly increased from 200MB / s to 700MB / s; the throttle upper limit of the BlockServer service component is set to a fixed threshold, such as 1000MB / s; the difference between the actual used traffic curve of BlockGCWorker and the throttle upper limit curve of the BlockGCWorker service component is the upper limit of the traffic that can suddenly increase when the BlockGCWorker service component processes data; usually, when the application is not in the peak period, the actually used traffic of the BlockGCWorker service component and the BlockServer service component is relatively low. For example, the actually used traffic of the BlockGCWorker service component can be 100MB / s.
[0195] In specific implementation, in order to avoid the problem of traffic surge resonance between the BlockBlockServer service component and the BlockGCWorker service component, a traffic observation window is introduced between the throttle traffic upper limit of the BlockGCWorker service component and the actual traffic of the BlockGCWorker service component. Without changing the throttle setting policies of the BlockGCWorker service component and the BlockServer service component, only the traffic observation window is used to control the traffic used by the BlockGCWorker service component.
[0196] Furthermore, given a traffic observation window Tk (i.e., the above-mentioned traffic observation time window), the actual traffic of the BlockGCWorker service component is allowed to explore the traffic width Tt (i.e., the above-mentioned traffic growth gradient) upward or downward based on the current traffic Tb (i.e., the initial value of each traffic observation time window). There is a basic traffic value Tb within each traffic observation window Tk. The initial value of Tb is the traffic Tg of the BlockGCWorker service component when garbage collection has not started yet (i.e., the starting value of the initial value of each traffic observation time window, that is, the initial value of the current traffic observation time window). Within the first traffic observation window Tk (i.e., the above-mentioned current traffic observation time window), the maximum traffic that the BlockGCWorker service component can reach is Tb + Tt (i.e., the upper limit traffic of the target traffic range of the current traffic observation time window).
[0197] After that, when performing traffic control for the next traffic observation window, by determining the traffic usage situation of the current traffic observation window for the traffic within the traffic width Tt explored upward or downward based on the current traffic Tb, the traffic control method for the BlockGCWorker service component within the next traffic observation window is determined. For example, if the current traffic of the BlockGCWorker service component is Tb and it reaches the traffic of Tb + Tt for more than 60% of the time within the Tk time window, then within the next time window Tk, the basic traffic control of the BlockGCWorker service component (i.e., the initial value within the next traffic observation time window) is increased to Tb = (Tb + Tt). Another example is that if the current traffic of the BlockGCWorker service component is Tb and it reaches the traffic of (Tb - Tt) for more than 60% of the time within the Tk time window, then within the next time window Tk, the basic traffic control of the BlockGCWorker service component (i.e., the initial value within the next traffic observation time window) is adjusted downward to Tb = (Tb - Tt).
[0198] In this way, probe backward in sequence according to the time window of traffic observation until the garbage collection of the BlockGCWorker service component is completed.
[0199] It should be noted that the maximum traffic value that can be probed by the above Tb + Tt is the throttle upper limit of the BlockGCWorker service component, that is, the maximum value of Tb = gcworkerthrottle - Tt; the minimum traffic value that can be probed by Tb + Tt is 0, that is, the minimum value of Tb is Tt.
[0200] In addition, the setting methods of the above Tk, Tt, and Tb are specifically as follows:
[0201] 1) To avoid the sawtooth fluctuation of the traffic used by the BlockGCWorker service component, usually set the traffic observation window Tk within a reasonable range. For example, the traffic observation window Tk can be set to three minutes.
[0202] 2) To ensure the normal processing of garbage collection by the BlockGCWorker service component, Tt can be set according to actual needs. For example, if it is expected that the traffic used by the BlockGCWorker service component can reach the throttle upper limit of the BlockGCWorker service component within 30 minutes at the fastest, then, according to Tt = 3 minutes and the throttle upper limit of the BlockGCWorker service component = 700 MB / s, Tt = 700 MB / s / (30 / 3) = 70 MB / s can be set.
[0203] 3) Set the initial value of Tb to the traffic Tg currently used by the BlockGCWorker service component, and according to the above steps, perform dynamic traffic control on the BlockGCWorker service component in the way of dynamically detecting the traffic up and down (that is, the above traffic control method).
[0204] The traffic control method provided by the embodiments of this specification performs traffic control on the traffic used by the backend data processing component in the data processing device when executing the backend data processing task of the backend data processing component triggered during data processing by the frontend data processing component. Specifically, the traffic used by the backend data processing component is dynamically controlled through the traffic observation time window, so that the backend data processing component executes the backend data processing task with smooth traffic, avoiding the situation of sudden increase and resonance between the traffic used by the backend data processing component and the traffic used by the frontend data processing component, thereby improving the service quality provided by the data processing device.
[0205] Corresponding to the above method embodiments, this specification also provides embodiments of a traffic control device. Figure 7The structural schematic diagram of a traffic control device provided by an embodiment of this specification is shown. As Figure 7 shown, the device includes:
[0206] A first receiving module 702, configured to receive a traffic acquisition request of a backend data processing component when traffic is allocated to a frontend data processing component;
[0207] A first determining module 704, configured to determine an initial traffic volume and a traffic growth gradient of the backend data processing component within a current traffic observation time window in response to the traffic acquisition request;
[0208] A second determining module 706, configured to determine a target traffic range within the current traffic observation time window according to the initial traffic volume and the traffic growth gradient;
[0209] A third determining module 708, configured to determine a traffic allocation strategy according to traffic usage information of the backend data processing component within the target traffic range, and determine a target traffic range within a next traffic observation time window according to the traffic allocation strategy.
[0210] Optionally, the third determining module 708 is further configured to:
[0211] When it is determined that the traffic usage information of the backend data processing component within the target traffic range meets a first traffic allocation condition, determine a first traffic allocation strategy, and determine a target traffic range within a next traffic observation time window according to the first traffic allocation strategy; or
[0212] When it is determined that the traffic usage information of the backend data processing component within the target traffic range meets a second traffic allocation condition, determine a second traffic allocation strategy, and determine a target traffic range within a next traffic observation time window according to the second traffic allocation strategy; or
[0213] When it is determined that the traffic usage information of the backend data processing component within the target traffic range does not meet the first traffic allocation condition and the second traffic allocation condition, determine a third traffic allocation strategy, and determine a target traffic range within a next traffic observation time window according to the third traffic allocation strategy.
[0214] Optionally, the first traffic allocation condition is that there is a usage traffic exceeding a preset percentage in the traffic usage information, reaching the upper limit traffic of the target traffic range within the current traffic observation time window;
[0215] Correspondingly, the third determining module 708 is further configured to:
[0216] Determine the first traffic allocation strategy, and determine the initial traffic of the next traffic observation time window according to the upper limit traffic of the target traffic range;
[0217] According to the initial traffic of the next traffic observation time window and the traffic growth gradient, determine the target traffic range within the next traffic observation time window.
[0218] Optionally, the second traffic allocation condition is that there is traffic usage exceeding a preset percentage in the traffic usage information, reaching the lower limit traffic of the target traffic range within the current traffic observation time window;
[0219] Correspondingly, the third determination module 708 is further configured to:
[0220] Determine the second traffic allocation strategy, and determine the initial traffic of the next traffic observation time window according to the lower limit traffic of the target traffic range;
[0221] According to the initial traffic of the next traffic observation time window and the traffic growth gradient, determine the target traffic range within the next traffic observation time window.
[0222] Optionally, the third determination module 708 is further configured to:
[0223] Determine the third traffic allocation strategy, and determine the target traffic range within the next traffic observation time window according to the target traffic range within the current traffic observation time window.
[0224] Optionally, the device further includes a seventh determination module, configured to:
[0225] Determine the next traffic observation time window as the current traffic observation time window, and continue to execute the step of determining the traffic allocation strategy according to the traffic usage information within the target traffic range by the backend data processing component, and determining the target traffic range within the next traffic observation time window according to the traffic allocation strategy until the response to the traffic acquisition request sent by the backend data processing component is completed.
[0226] Optionally, the first determination module 704 is further configured to:
[0227] In response to the traffic acquisition request, determine the initial traffic, the preset traffic allocation upper limit, and the traffic allocation duration reaching the preset traffic allocation upper limit of the backend data processing component in the current traffic observation time window;
[0228] Determine the traffic growth gradient of the current traffic observation time window according to the current traffic observation time window, the preset upper limit of traffic allocation, and the traffic allocation duration.
[0229] Optionally, the second determination module 706 is further configured to:
[0230] Determine the upper limit of traffic within the current traffic observation time window according to the sum of the initial traffic and the traffic growth gradient;
[0231] Determine the lower limit of traffic within the current traffic observation time window according to the difference between the initial traffic and the traffic growth gradient;
[0232] Determine the target traffic range within the current traffic observation time window according to the upper limit of traffic and the lower limit of traffic.
[0233] Optionally, the duration of the current traffic observation time window is the same as that of the next traffic observation time window.
[0234] Optionally, the apparatus further includes a first task trigger module, configured to:
[0235] In the case of receiving a data processing request sent by the front-end data processing component, perform traffic allocation to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and generate a back-end data processing task during the execution of the data processing request, and trigger the back-end data processing component to execute the back-end data processing task.
[0236] Optionally, the apparatus further includes a third receiving module, configured to:
[0237] Receive a traffic acquisition request sent by the back-end data processing component when executing the back-end data processing task.
[0238] The above is a schematic solution of a traffic control device in this embodiment. It should be noted that the technical solution of this traffic control device and the technical solution of the above traffic control method belong to the same concept. For the details not described in the technical solution of the traffic control device, reference can be made to the description of the technical solution of the above traffic control method.
[0239] Corresponding to the above method embodiment, this specification also provides another embodiment of a traffic control device. Figure 8 It shows a structural schematic diagram of another traffic control device provided by an embodiment of this specification. As Figure 8 shown, the device includes:
[0240] A task trigger module 802, configured to, when receiving a data processing request sent by a front-end data processing component, perform traffic allocation for the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and generate a back-end data processing task during the execution of the data processing request, and trigger a back-end data processing component to execute the back-end data processing task;
[0241] A second receiving module 804, configured to receive a traffic acquisition request sent by the back-end data processing component when executing the back-end data processing task;
[0242] A fourth determination module 806, configured to, in response to the traffic acquisition request, determine an initial traffic volume and a traffic growth gradient of the back-end data processing component in a current traffic observation time window;
[0243] A fifth determination module 808, configured to determine a target traffic range within the current traffic observation time window according to the initial traffic volume and the traffic growth gradient;
[0244] A sixth determination module 810, configured to determine a traffic allocation policy according to traffic usage information of the back-end data processing component within the target traffic range, and determine a target traffic range within a next traffic observation time window according to the traffic allocation policy.
[0245] The above is a schematic solution of another traffic control device according to this embodiment. It should be noted that the technical solution of this traffic control device and the technical solution of the above-mentioned another traffic control method belong to the same concept. For the details not described in detail in the technical solution of this traffic control device, reference can be made to the description of the technical solution of the above-mentioned another traffic control method.
[0246] Figure 9 The structural block diagram of a computing device 900 provided according to an embodiment of this specification is shown. The components of the computing device 900 include, but are not limited to, a memory 910 and a processor 920. The processor 920 is connected to the memory 910 through a bus 930, and a database 950 is used to store data.
[0247] The computing device 900 also includes an access device 940, which enables the computing device 900 to communicate via one or more networks 960. Examples of such networks include the Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 940 may include one or more of any type of wired or wireless network interface (e.g., a network interface card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) wireless interface, a Worldwide Interoperability for Microwave Access (Wi-MAX) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.
[0248] In one embodiment of the present specification, the above components of the computing device 900 and Figure 9 other components not shown may also be connected to each other, for example, via a bus. It should be understood that Figure 9 the block diagram of the computing device shown is for illustrative purposes only and is not a limitation on the scope of the present specification. Those skilled in the art may add or replace other components as needed.
[0249] The computing device 900 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or personal computers (PCs). The computing device 900 can also be a mobile or stationary server.
[0250] Among them, the processor 920 is used to execute the following computer-executable instructions, and when the computer-executable instructions are executed by the processor, the steps of the above traffic control method are implemented.
[0251] The above is a schematic solution of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the above flow control method belong to the same concept. For the details not described in detail in the technical solution of the computing device, reference can be made to the description of the technical solution of the above flow control method.
[0252] An embodiment of this specification also provides a computer-readable storage medium storing computer-executable instructions, which when executed by a processor implement the steps of the above flow control method.
[0253] The above is a schematic solution of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium and the technical solution of the above flow control method belong to the same concept. For the details not described in detail in the technical solution of the storage medium, reference can be made to the description of the technical solution of the above flow control method.
[0254] An embodiment of this specification also provides a computer program product including a computer program / instructions, which when executed by a processor implement the steps of the above flow control method.
[0255] The above is a schematic solution of a computer program product according to this embodiment. It should be noted that the technical solution of this computer program product and the technical solution of the above flow control method belong to the same concept. For the details not described in detail in the technical solution of the computer program product, reference can be made to the description of the technical solution of the above flow control method.
[0256] The above describes specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve the desired result. Additionally, the processes depicted in the figures do not necessarily require the particular order or sequential order shown to achieve the desired result. In certain implementations, multitasking and parallel processing are also possible or may be advantageous.
[0257] The computer instructions include computer program code, which may be in the form of source code, object code, executable files, or some intermediate forms, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drives, mobile hard disks, magnetic disks, optical disks, computer memories, read-only memories (ROMs), random access memories (RAMs), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium can be appropriately increased or decreased according to the requirements of patent practice. For example, in some regions, according to patent practice, the computer-readable medium does not include electrical carrier signals and telecommunication signals.
[0258] It should be noted that for the foregoing method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations. However, those skilled in the art should be aware that the embodiments of this specification are not limited by the described action sequence, because according to the embodiments of this specification, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential for the embodiments of this specification.
[0259] In the above embodiments, the descriptions of the various embodiments have their own emphases. For the parts not detailed in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0260] The preferred embodiments of this specification disclosed above are only used to help explain this specification. The alternative embodiments do not describe all the details in detail, nor do they limit the invention to the specific embodiments described. Obviously, many modifications and changes can be made according to the content of the embodiments of this specification. This specification selects and specifically describes these embodiments to better explain the principles and practical applications of the embodiments of this specification, so that those skilled in the art can understand and utilize this specification well. This specification is only limited by the claims and their full scope and equivalents.
Claims
1. A traffic control method is applied to a data processing device, which includes a front-end data processing component and a back-end data processing component sharing a target network card. The method includes: When allocating traffic to the front-end data processing component, receiving a traffic acquisition request from the back-end data processing component; In response to the traffic acquisition request, determining the initial traffic and the traffic growth gradient of the back-end data processing component in the current traffic observation time window; According to the initial traffic and the traffic growth gradient, determining the target traffic range within the current traffic observation time window; According to the traffic usage information of the back-end data processing component within the target traffic range, determining a traffic allocation strategy, and according to the traffic allocation strategy, determining the target traffic range within the next traffic observation time window.
2. The traffic control method according to claim 1, wherein the step of determining a traffic allocation strategy according to the traffic usage information of the back-end data processing component within the target traffic range and determining the target traffic range within the next traffic observation time window according to the traffic allocation strategy includes: When it is determined that the traffic usage information of the back-end data processing component within the target traffic range meets the first traffic allocation condition, determining a first traffic allocation strategy, and according to the first traffic allocation strategy, determining the target traffic range within the next traffic observation time window; or When it is determined that the traffic usage information of the back-end data processing component within the target traffic range meets the second traffic allocation condition, determining a second traffic allocation strategy, and according to the second traffic allocation strategy, determining the target traffic range within the next traffic observation time window; or When it is determined that the traffic usage information of the back-end data processing component within the target traffic range does not meet the first traffic allocation condition and the second traffic allocation condition, determining a third traffic allocation strategy, and according to the third traffic allocation strategy, determining the target traffic range within the next traffic observation time window.
3. The traffic control method according to claim 2, wherein the first traffic allocation condition is that there is a usage traffic exceeding a preset percentage in the traffic usage information, reaching the upper limit traffic of the target traffic range within the current traffic observation time window; The step of determining the first traffic allocation strategy and determining the target traffic range within the next traffic observation time window according to the first traffic allocation strategy includes: Determining the first traffic allocation strategy, and according to the upper limit traffic of the target traffic range, determining the initial traffic of the next traffic observation time window; According to the initial traffic of the next traffic observation time window and the traffic growth gradient, determining the target traffic range within the next traffic observation time window.
4. The traffic control method according to claim 2, wherein the second traffic allocation condition is that there is a usage traffic exceeding a preset percentage in the traffic usage information, reaching the lower limit traffic of the target traffic range within the current traffic observation time window; Determining the second traffic allocation policy and, based on the second traffic allocation policy, determining the target traffic range within the next traffic observation time window includes: Determining the second traffic allocation policy and, based on the lower-limit traffic of the target traffic range, determining the initial traffic within the next traffic observation time window; Based on the initial traffic within the next traffic observation time window and the traffic growth gradient, determining the target traffic range within the next traffic observation time window.
5. The traffic control method according to claim 2, wherein determining the third traffic allocation policy and, based on the third traffic allocation policy, determining the target traffic range within the next traffic observation time window includes: Determining the third traffic allocation policy and, based on the target traffic range within the current traffic observation time window, determining the target traffic range within the next traffic observation time window.
6. The traffic control method according to any one of claims 1-5, after determining the target traffic range within the next traffic observation time window, further includes: Determining the next traffic observation time window as the current traffic observation time window and continuing to execute the step of determining the traffic allocation policy based on the traffic usage information within the target traffic range by the backend data processing component and, based on the traffic allocation policy, determining the target traffic range within the next traffic observation time window until the response to the traffic acquisition request sent by the backend data processing component is completed.
7. The traffic control method according to claim 1, wherein in response to the traffic acquisition request, determining the initial traffic and the traffic growth gradient of the backend data processing component within the current traffic observation time window includes: In response to the traffic acquisition request, determining the initial traffic, the preset traffic allocation upper limit, and the traffic allocation duration to reach the preset traffic allocation upper limit of the backend data processing component within the current traffic observation time window; Based on the current traffic observation time window, the preset traffic allocation upper limit, and the traffic allocation duration, determining the traffic growth gradient of the current traffic observation time window.
8. The traffic control method according to claim 1, wherein based on the initial traffic and the traffic growth gradient, determining the target traffic range within the current traffic observation time window includes: Based on the sum of the initial traffic and the traffic growth gradient, determining the upper-limit traffic within the current traffic observation time window; Based on the difference between the initial traffic and the traffic growth gradient, determining the lower-limit traffic within the current traffic observation time window; Based on the upper-limit traffic and the lower-limit traffic, determining the target traffic range within the current traffic observation time window.
9. The traffic control method according to claim 1, wherein the duration of the current traffic observation time window is the same as the duration of the next traffic observation time window.
10. The traffic control method according to claim 1, before receiving the traffic acquisition request from the backend data processing component when allocating traffic to the frontend data processing component, further includes: In the case of receiving a data processing request sent by the front-end data processing component, perform traffic allocation to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and during the execution of the data processing request, generate a back-end data processing task, and trigger the back-end data processing component to execute the back-end data processing task.
11. The traffic control method according to claim 10, wherein the receiving the traffic acquisition request of the back-end data processing component includes: Receiving the traffic acquisition request sent by the back-end data processing component when the back-end data processing component executes the back-end data processing task.
12. A traffic control method applied to a data processing device, the data processing device includes a front-end data processing component and a back-end data processing component sharing a target network card, and the method includes: In the case of receiving a data processing request sent by the front-end data processing component, perform traffic allocation to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and during the execution of the data processing request, generate a back-end data processing task, and trigger the back-end data processing component to execute the back-end data processing task; Receiving a traffic acquisition request sent by the back-end data processing component when the back-end data processing component executes the back-end data processing task; In response to the traffic acquisition request, determine the initial traffic and the traffic growth gradient of the back-end data processing component in the current traffic observation time window; According to the initial traffic and the traffic growth gradient, determine the target traffic range within the current traffic observation time window; According to the traffic usage information of the back-end data processing component for the traffic within the target traffic range, determine a traffic allocation strategy, and according to the traffic allocation strategy, determine the target traffic range in the next traffic observation time window.
13. A traffic control device, including: A first receiving module, configured to receive a traffic acquisition request of a back-end data processing component when performing traffic allocation to a front-end data processing component; A first determination module, configured to, in response to the traffic acquisition request, determine the initial traffic and the traffic growth gradient of the back-end data processing component in the current traffic observation time window; A second determination module, configured to determine the target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient; A third determination module, configured to determine a traffic allocation strategy according to the traffic usage information of the back-end data processing component for the traffic within the target traffic range, and determine the target traffic range in the next traffic observation time window according to the traffic allocation strategy.
14. A traffic control device, including: A task trigger module, configured to, when receiving a data processing request sent by a front-end data processing component, perform traffic allocation to the front-end data processing component, so that the front-end data processing component executes the data processing request according to the allocated traffic, and generate a back-end data processing task during the execution of the data processing request, and trigger a back-end data processing component to execute the back-end data processing task; A second receiving module, configured to receive a traffic acquisition request sent by the back-end data processing component when executing the back-end data processing task; A fourth determination module, configured to, in response to the traffic acquisition request, determine an initial traffic and a traffic growth gradient of the back-end data processing component in a current traffic observation time window; A fifth determination module, configured to determine a target traffic range within the current traffic observation time window according to the initial traffic and the traffic growth gradient; A sixth determination module, configured to determine a traffic allocation policy according to traffic usage information of the back-end data processing component within the target traffic range, and determine a target traffic range within a next traffic observation time window according to the traffic allocation policy.
15. A computing device, comprising: A memory and a processor; The memory is used for storing computer-executable instructions, and the processor is used for executing the computer-executable instructions, and when the computer-executable instructions are executed by the processor, the steps of the traffic control method according to any one of claims 1 to 12 are implemented.
16. A computer-readable storage medium, which stores computer-executable instructions, and when the computer-executable instructions are executed by a processor, the steps of the traffic control method according to any one of claims 1 to 12 are implemented.
17. A computer program product, comprising a computer program / instructions, and when the computer program / instructions are executed by a processor, the steps of the traffic control method according to any one of claims 1 to 12 are implemented.