Flow control method, device, equipment and system

By using the traffic control model in the banking system to adjust the transaction traffic transmission rate of the application server, the problem of insufficient resources during peak periods is solved, ensuring the transaction is completed smoothly, and resource use is optimized, reducing costs.

CN114116207BActive Publication Date: 2025-01-10BANK OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111332156.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-11
Publication Date
2025-01-10
Estimated Expiration
2041-11-11

AI Technical Summary

Technical Problem

When the application server in the banking system processes a large amount of financial transaction traffic, due to insufficient hardware resources, the transaction will be slow, the response timeout or even the downtime will be affected, and the customer experience will be affected. The increase in the transaction peak will increase the cost, but the resource will be wasted during the peak period. .

Method used

By obtaining the resource usage value of the application server, when the resource usage value reaches the threshold, the flow control model is used to determine the delay of transmitting financial transaction traffic to the application server, and adjust the transmission rate to reduce the transaction volume processed by the server within a certain period of time. It can process the received transaction traffic faster and promptly feedback response messages.

Benefits of technology

It effectively avoids slow transactions, timeouts and downtimes, ensures smooth completion of transactions, and optimizes the use of hardware resources and reduces costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114116207B_ABST
    Figure CN114116207B_ABST
Patent Text Reader

Abstract

The present application discloses a flow control method, device, equipment and system, which relate to the financial field. The method includes obtaining a resource usage value of a first application server. If the resource usage value is greater than or equal to a threshold value, the delay of the financial transaction flow to be transmitted to the first application server is determined according to a flow control model, and then the financial transaction flow is transmitted to the first application server according to the determined delay control. Among them, the resource usage value is used to indicate the occupation of resources used by the first application server to process the financial transaction flow, and the resources include computing resources and storage resources. In this way, according to the resource usage of the first application server, the rate of the financial transaction flow transmitted to the first application server is adjusted, so that the first application server can process the received financial transaction flow as soon as possible based on its own hardware resources to ensure the smooth completion of the transaction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the financial field, and in particular to a flow control method, device, equipment and system. Background Art

[0002] With the development of network technology, terminals conduct financial transactions through the network, such as transfers or online shopping, etc. When the application server in the banking system processes the financial transaction traffic generated by a large number of financial transactions based on its own hardware resources, there will be slow transactions, response timeouts, or even downtime due to insufficient hardware resources, resulting in the application server being unable to feedback response messages to the terminal in time (such as the transfer success reminder fed back by the application server to the terminal after the terminal initiates the transfer), resulting in transaction failures and affecting customer experience.

[0003] Usually, by predicting the transaction peak, the hardware resources of the deployed application server are increased in advance. This will increase the hardware resource cost and the operation and maintenance manpower cost. When the application server processes less financial transaction traffic, it will cause a waste of hardware resources. Therefore, when the application server processes a large amount of financial transaction traffic, how to ensure the rate at which the application server processes the financial transaction traffic and feedback the response message as quickly as possible is an urgent problem to be solved. Summary of the invention

[0004] The present application proposes a flow control method, device, equipment and system, thereby ensuring the rate at which the application server processes a large amount of financial transaction traffic and feeding back a response message as quickly as possible when the application server processes a large amount of financial transaction traffic.

[0005] In a first aspect, a flow control method is provided, the method comprising: a control device obtains a resource usage value of a first application server, and if the resource usage value is greater than or equal to a threshold, determines a delay of financial transaction traffic to be transmitted to the first application server according to a flow control model, and then controls a rate of transmitting the financial transaction traffic to the first application server according to the determined delay. The resource usage value is used to indicate the occupation of resources used by the first application server to process the financial transaction traffic, the resources include computing resources and storage resources, and the threshold is used to indicate the limit of resources allowed to be occupied by the first application server to process the financial transaction traffic.

[0006] In this way, the control device adjusts the rate of financial transaction traffic transmitted to the first application server according to the resource usage of the first application server, that is, when the first application server processes a large amount of financial transaction traffic, the financial transaction traffic is delayed to be transmitted to the first application server, and the financial transaction traffic processed by the first application server within a certain period of time is reduced, so that the first application server can process the received financial transaction traffic as quickly as possible based on its own hardware resources, and feedback the response message as soon as possible to ensure the smooth completion of the transaction. It avoids the situation where the first application server cannot process the financial transaction traffic as quickly as possible due to insufficient hardware resources, resulting in slow transactions, response timeouts, or even downtime.

[0007] In one possible implementation, determining a delay for transmitting financial transaction traffic to a first application server according to a traffic control model includes: inputting a resource usage value and a unit transaction volume of the first application server into the traffic control model, and outputting a delay.

[0008] In this way, the control device accurately calculates the delay of the transmission device transmitting the financial transaction volume flow to the first application server based on the flow control model and the resource usage value and unit transaction volume of the first application server. The delay calculated by the flow control model can be combined with the resource usage of the first application server to improve the accuracy of the delay prediction.

[0009] In a possible implementation, before determining the delay of transmitting the financial transaction flow to the first application server according to the flow control model, the method further includes: inputting the computing resource sample value, the storage resource sample value and the unit transaction volume sample value into the flow control model, training the flow control model parameters until the delay output by the flow control model and the error of the delay sample value converge to obtain the flow control model. The rate of transmitting the unit transaction volume sample value to the first application server is controlled according to the delay sample value, so that the first application server processes the unit transaction volume sample value based on the computing resource sample value and the storage resource sample value to achieve processing satisfaction.

[0010] In one possible implementation, computing resource sample values, storage resource sample values, and unit transaction volume sample values ​​are input into a flow control model, and flow control model parameters are trained until the delay output by the flow control model and the error of the delay sample values ​​converge, including: computing resource sample values, storage resource sample values, and unit transaction volume sample values ​​are input into the flow control model, and flow control model parameters are trained according to a back propagation algorithm until the delay output by the flow control model and the error of the delay sample values ​​converge.

[0011] In a possible implementation, controlling the rate of transmitting financial transaction traffic to the first application server according to the delay includes: sending a control instruction to a transmission device, the control instruction being used to instruct the transmission device to send the financial transaction traffic to the first server according to the delay.

[0012] In one possible implementation, sending a control instruction to a transmission device includes: sending a control instruction to a first transmission device among M transmission devices connected to N application servers in the system, the first transmission device is a transmission device connected to a first application server, and M and N are both integers greater than or equal to 1.

[0013] A control instruction is sent to the first transmission device so that the first transmission device sends financial transaction traffic to the first application server according to the delay indicated by the control instruction, thereby enabling the first application server to process the received financial transaction traffic as quickly as possible based on its own hardware resources to ensure smooth completion of the transaction.

[0014] In a second aspect, a control device is provided, comprising: a receiving unit, used to obtain a resource usage value of a first application server, the resource usage value being used to indicate the occupancy of resources used by the first application server to process financial transaction traffic, the resources including computing resources and storage resources; when the resource usage value is greater than or equal to a threshold, a processing unit, used to determine a delay for the financial transaction traffic to be transmitted to the first application server according to a traffic control model, the threshold being used to indicate a limit on resources allowed to be occupied by the first application server to process the financial transaction traffic; and a sending unit, used to control the rate at which the financial transaction traffic is transmitted to the first application server according to the delay.

[0015] In a possible implementation, the processing unit is specifically configured to input the resource usage value and the unit transaction volume of the first application server into the flow control model, and output the delay.

[0016] In one possible implementation, the processing unit is further used to input the computing resource sample value, the storage resource sample value and the unit transaction volume sample value into the flow control model, and train the flow control model parameters until the delay output by the flow control model and the error of the delay sample value converge, wherein the rate of transmitting the unit transaction volume sample value to the first application server is controlled according to the delay sample value, so that the first application server processes the unit transaction volume sample value based on the computing resource sample value and the storage resource sample value to achieve processing satisfaction.

[0017] In one possible implementation, the processing unit is specifically used to input computing resource sample values, storage resource sample values, and unit transaction volume sample values ​​into a flow control model, and train the flow control model parameters according to a back propagation algorithm until the delay output by the flow control model and the error of the delay sample value converge.

[0018] In a possible implementation, the sending unit is specifically configured to send a control instruction to the transmission device, where the control instruction is configured to instruct the transmission device to send financial transaction traffic to the first application server according to a delay.

[0019] In one possible implementation, the sending unit is specifically used to send a control instruction to a first transmission device among M transmission devices connected to N application servers in the system, where the first transmission device is a transmission device connected to the first application server, and M and N are both integers greater than or equal to 1.

[0020] In a third aspect, a control device is provided, comprising a memory and a processor, wherein the memory is used to store computer-executable instructions, and the processor executes the computer-executable instructions stored in the memory so that the control device performs any one of the methods provided in the first aspect above.

[0021] In a fourth aspect, a communication system is provided, comprising a control device, M transmission devices and N application servers, the M transmission devices including a first transmission device, the N application servers including a first application server, the first application server being an application server among the M application servers whose resource usage value is greater than or equal to a threshold, the first transmission device being a transmission device among the M transmission devices connected to the first application server, M and N being integers greater than or equal to 1, wherein the control device is used to execute any one of the methods provided in the first aspect above to realize the rate at which the first transmission device transmits financial transaction traffic to the first application server according to delay control.

[0022] According to a fifth aspect, a computer-readable storage medium is provided, which stores computer instructions. When the computer instructions are executed on a computer, the computer executes any one of the methods provided in the first aspect.

[0023] According to a sixth aspect, a computer program product comprising computer instructions is provided. When the computer instructions are executed on a computer, the computer is enabled to execute any one of the methods provided in the first aspect.

[0024] The technical effects brought about by any possible implementation method in the above-mentioned second to sixth aspects can be referred to the technical effects brought about by the corresponding implementation method in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present invention and do not constitute a limitation on the technical solution of the present invention.

[0026] Figure 1 A schematic diagram of a trading system networking structure provided in an embodiment of the present application;

[0027] Figure 2 A flow chart of a flow control method provided in an embodiment of the present application;

[0028] Figure 3A schematic diagram of a flow control process provided in an embodiment of the present application;

[0029] Figure 4 A schematic diagram of another trading system networking structure provided in an embodiment of the present application;

[0030] Figure 5 A schematic diagram of the composition of a control device provided in an embodiment of the present application;

[0031] Figure 6 A schematic diagram of the hardware structure of a control device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0032] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0033] The terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of this application, unless otherwise specified, "plurality" means two or more.

[0034] In the embodiments of the present application, words such as "exemplarily" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplarily" or "for example" is intended to present related concepts in a concrete way for easy understanding.

[0035] In the description of this application, unless otherwise specified, " / " indicates that the objects associated before and after are in an "or" relationship, for example, A / B can represent A or B; "and / or" in this application is only a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. In addition, in the description of this application, unless otherwise specified, "multiple" refers to two or more than two. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.

[0036] In the embodiments of the present application, at least one can also be described as one or more, and multiple can be two, three, four or more, which is not limited in the present application.

[0037] For the application server in the banking system, it is necessary to respond to the financial transaction flow in real time to ensure the smooth completion of the transaction. For example, financial transaction flow can refer to the amount of data accessed by the application server in the banking system within a certain period of time when the terminal conducts financial transactions through the Internet. The embodiment of the present application proposes a flow control method, which adjusts the rate of financial transaction flow transmitted to the application server according to the resource usage of the application server (such as computing resources and storage resources), so that the application server can process the received financial transaction flow as quickly as possible based on its own hardware resources, and promptly feedback the response message to the terminal to ensure the smooth completion of the transaction.

[0038] Figure 1 This is a schematic diagram of the structure of a trading system provided in an embodiment of the present application. Figure 1 As shown, the trading system 10 includes at least one terminal (such as Figure 1 The terminal 101 and the terminal 102 shown in FIG. 1 ), the Internet 130 and the banking system 11.

[0039] A terminal (such as terminal 101) can be a device with wireless transceiver functions. The terminal can have different names, such as terminal equipment, access terminal, terminal unit, terminal station, mobile station, mobile station, remote station, remote terminal, mobile device, wireless communication device, terminal agent or terminal device. The terminal can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; it can also be deployed on the water (such as ships); it can also be deployed in the air (such as airplanes, balloons and satellites). The terminal device may be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device or a wearable device, an unmanned aerial vehicle (UAV) and an unmanned aerial vehicle controller (UAVC), a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in self-driving, a wireless terminal in remote medical, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart city, a wireless terminal in smart home, etc. The terminal device may be mobile or fixed. The embodiments of the present application do not limit the specific technology and specific device form adopted by the terminal. In an embodiment of the present application, the terminal can access the Internet 130 via a wired or wireless method, and can conduct financial transactions such as online shopping and transfers through the Internet 130, generate financial transaction traffic, and then send the financial transaction traffic to the bank system 11 through the Internet 130.

[0040] The Internet 130, also known as the Internet or the transliteration Internet, is a huge network of networks connected in series. These networks are connected by a set of common protocols to form a logically single huge international network. In the embodiment of the present application, the Internet 130 is used to forward the financial transaction traffic sent by the terminal to the bank system 11.

[0041] The banking system 11 includes a control device 110, M transmission devices (such as transmission device 111, transmission device 112 and transmission device 113) and N application servers (such as application server 121, application server 122 and application server 123). Both N and M are integers greater than or equal to 1.

[0042] The control device 110 is connected to M transmission devices and N application servers by wired or wireless means. The control device 110 may be an independent physical device, such as a server or a computer. In the embodiment of the present application, the control device 110 may also be referred to as a flow controller. The control device 110 is used to obtain the resource usage value of the application server included in the banking system 11, and adjust the rate at which the transmission device transmits financial transaction traffic to the application server according to the resource usage value of the application server.

[0043] One transmission device may be connected to one application server or to multiple application servers. The embodiment of the present application does not limit the connection relationship between the transmission device and the application server.

[0044] For example, Figure 1 As shown, transmission device 111 is connected to application server 121 , transmission device 112 is connected to application server 121 , application server 122 , and application server 123 , and transmission device 113 is connected to application server 121 and application server 122 .

[0045] In some embodiments, one application server in the banking system is connected to one transmission device. For example, transmission device 111 is only connected to application server 121, transmission device 112 is only connected to application server 122, and transmission device 113 is only connected to application server 123.

[0046] Transmission equipment (such as Figure 1 The transmission device 111 shown may be an independent physical device, such as a server or a computer, and the transmission device is used to transmit financial transaction traffic to the application server. In the embodiment of the present application, the transmission device receives the financial transaction traffic sent by the terminal 101 through the Internet 130, and then transmits the financial transaction traffic to the application server. The transmission device can also receive the control instruction sent by the control device 110, and transmit the financial transaction traffic to the application server according to the delay indicated by the control instruction. Exemplarily, the transmission device 111 can receive the control instruction sent by the control device 110, and transmit the financial transaction traffic to the application server 121 according to the delay indicated by the control instruction.

[0047] Application servers (such as Figure 1The application server 121 shown can be an independent physical device, such as a server or a computer. The application server is used to process the received financial transaction traffic. For example, if the financial transaction traffic received by the application server is data generated by the terminal transferring money, the application server can process the financial transaction traffic by reducing the corresponding amount in the transferor's account, increasing the corresponding amount in the recipient's account, and feeding back a transfer success message to the transferor. In the embodiment of the present application, the application server can also be called an application node, and the application server is used to receive the financial transaction traffic sent by the transmission device and report its own resource usage to the control device 110.

[0048] It should be understood that Figure 1 is an exemplary architecture diagram, Figure 1 The number of devices included in the trading system shown is not limited (such as the number of terminals, the number of transmission devices and the number of application servers). Figure 1 In addition to the equipment shown, Figure 1 The trading system shown may also include other devices, which are not limited to this.

[0049] Next, if Figure 2 As shown, the embodiment of the present application provides a flow control method, which is executed by a control device, and the control device can be Figure 1 In the control device 110 of the trading system 10 shown, the method includes the following steps.

[0050] S201. A control device obtains a resource usage value of a first application server.

[0051] The control device may obtain the resource usage value of the first application server in the following ways.

[0052] Method 1: Passive acquisition: In a banking system, a first application server may periodically report its own resource usage value to a control device, so that the control device can dynamically adjust the delay of financial transaction traffic to be transmitted to the application server according to the resource usage value of the application server, wherein the reporting period may be preset by a manager.

[0053] Mode 2: Active acquisition: The control device may actively send a request message to the first application server, where the request message is used to instruct the first application server to report its own resource usage value.

[0054] The resource usage value is used to indicate the occupancy of resources used by the first application server to process financial transaction flows, and the resources include computing resources and storage resources. The computing resources may be the central processing unit (CPU) resources of the first application server, and the computing resource sample value described below may refer to the CPU occupancy rate sample value. The storage resources may be the memory resources of the first application server, and the storage resource sample value described below may refer to the memory usage rate sample value.

[0055] The first application server may be any one of the N application servers included in the banking system.

[0056] S202: When the resource usage value is greater than or equal to the threshold, the control device determines a delay of the financial transaction traffic to be transmitted to the first application server according to the traffic control model.

[0057] The control device determines whether the resource usage value of the first application server is greater than a threshold value, and determines whether to delay the transmission of financial transaction traffic to the first application server. The threshold value is used to indicate the limit of resources allowed to be occupied by the first application server for processing financial transactions, and the threshold value can be set in advance by the administrator.

[0058] If the resource usage value of the first application server is less than the threshold, it means that the first application server is not currently in a busy state, and the control device does not need to adjust the rate of financial transaction traffic transmitted to the first application server, that is, the control device does not need to control the transmission device to delay the transmission of financial transaction traffic to the first application server.

[0059] If the resource usage value of the first application server is greater than or equal to the threshold, it means that the first application server is currently busy. The control device can adjust the rate of transmitting financial transaction traffic to the first application server, that is, delay transmitting financial transaction traffic to the first application server.

[0060] When the resource usage value of the first application server is the occupancy rate of the CPU of the first application server, the resource usage value of the first application server is greater than or equal to the threshold, which may be that the occupancy rate of the CPU of the first application server is greater than or equal to the occupancy rate threshold. For example, if the occupancy rate threshold is 90%, if the occupancy rate of the CPU of the first application server is greater than or equal to 90%, it can be understood that the resource usage value of the first application server is greater than or equal to the threshold.

[0061] When the resource usage value of the first application server is the memory usage rate of the first application server, the resource usage value of the first application server is greater than or equal to the threshold, which may be that the memory usage rate of the first application server is greater than or equal to the usage rate threshold. For example, if the usage rate threshold is 90%, if the memory usage rate of the first application server is greater than or equal to 90%, it can be understood that the resource usage value of the first application server is greater than or equal to the threshold.

[0062] When the resource usage value of the first application server includes the CPU occupancy rate and memory usage rate of the first application server, the resource usage value of the first application server is greater than or equal to the threshold value, and the sum of the CPU occupancy rate and memory occupancy rate of the first application server is greater than or equal to the threshold value. Exemplarily, the resource usage value may be equal to (CPU occupancy rate + memory usage rate) / 2 of the first application server. For example, if the threshold value is 90%, if the CPU occupancy rate of the first application server is greater than or equal to 90% and the memory usage rate is greater than or equal to 90%, it can be understood that the resource usage value of the first application server is greater than or equal to the threshold value.

[0063] It is understandable that the higher the CPU occupancy rate and memory usage rate of the first application server, the busier the first application server is. If the resource usage value of the first application server is greater than or equal to the threshold, continuing to transmit financial transaction traffic to the first application server may cause the first application server to be unable to process the received financial transaction traffic as quickly as possible and unable to feedback the response message to the terminal in time, resulting in transaction failure and affecting customer experience.

[0064] Therefore, when the resource usage value of the first application server is greater than or equal to the threshold, the control device can determine the delay of the financial transaction traffic to be transmitted to the first application server according to the traffic control model, so that the transmission device delays the transmission of the financial transaction traffic to the first application server, reduces the amount of data of the financial transaction traffic processed by the first application server, and ensures that the first application server can process the received financial transaction traffic as soon as possible, and promptly feedback the response message to the terminal to ensure the smooth completion of the transaction.

[0065] Optionally, before the control device determines whether the resource usage value is greater than or equal to a threshold, it can create a flow control model based on a supervised learning method, input computing resource sample values, storage resource sample values, and unit transaction volume sample values ​​into the flow control model, and train the flow control model parameters until the delay output by the flow control model and the error of the delay sample value converge.

[0066] Among them, the control device controls the rate of transmitting the unit transaction volume sample value to the first application server according to the delay sample value, so that the first application server processes the unit transaction volume sample value based on the computing resource sample value and the storage resource sample value to achieve processing satisfaction. It can be understood that the control device controls the first transmission device to delay the transmission of the unit transaction volume sample value to the first application server according to the delay indicated by the delay sample value, so that the first application server can process the received unit transaction volume sample value as soon as possible based on its own computing resources indicated by the computing resource sample value and its own storage resources indicated by the storage resource sample value, and promptly feedback the response message to the terminal, that is, the first application server processes the unit transaction volume sample value to achieve processing satisfaction.

[0067] The unit transaction volume may refer to the transaction volume within a unit time (e.g., 1 second), that is, the amount of data accessing the first application server within a unit time, or the amount of data processed by the first application server within a unit time. The unit transaction volume sample value may refer to a collection of transaction volumes within different unit times.

[0068] The computing resource sample value may refer to a set of different computing resource occupancy rates corresponding to the first application server when processing financial transaction flows in different unit times.

[0069] The storage resource sample value may refer to a set of different storage resource usage rates corresponding to the first application server when processing financial transaction flows in different unit times.

[0070] The delay sample value may refer to a set of delay times generated when the first application server processes financial transaction flows in different unit times.

[0071] For example, Figure 1 The application server 121 in FIG. 1 is used as an example to illustrate. For the application server 121, an automatic testing tool is used to simulate the situation where the transaction pressure continues to increase, that is, the financial transaction flow received by the application server 121 continues to increase, and the financial transaction flow is continuously sent to the application server 121 to obtain sample data. Then, the transaction information table shown in Table 1 below can be obtained.

[0072] Table 1

[0073]

[0074] The judgment rule of transaction satisfaction may be that under different unit transaction volumes, if the application server's response time to financial transaction traffic is within 5 seconds (s) and the transaction success rate is 100%, it can be considered satisfactory. If the application server's response time to financial transaction traffic exceeds 5s and / or the success rate does not reach 100%, it can be considered unsatisfactory.

[0075] Next, select all items with satisfactory transaction satisfaction and obtain the sample data table shown in Table 2 below.

[0076] Table 2

[0077]

[0078] It can be seen from Table 2 above that when the transaction satisfaction is satisfactory, a specific unit transaction volume, CPU occupancy rate and memory usage rate can correspond to a specific delay time, which can satisfy the following formula (1).

[0079] T=A*X tps +B*X cpu +C*X ram Formula (1)

[0080] Where T is the delay time, X tps is the unit transaction volume, X cpu is the CPU occupancy rate, X ram Is the memory usage.

[0081] Then, it is necessary to calculate the three parameters A, B, and C to complete the training of the flow control model. The three parameters A, B, and C are also flow control model parameters, which can also be called training factors.

[0082] Among them, supervised learning is a machine learning task to infer a function from labeled training data. The training data includes a set of training examples. In supervised learning, each instance consists of an input object (usually a vector) and a desired output value (also called a supervisory signal). The supervised learning algorithm analyzes the training data and generates an inferred function that can be used to map out new instances. An optimal solution will allow the algorithm to correctly determine the class labels of those unseen instances. This requires that the learning algorithm is formed in a "reasonable" way from a training data to an unseen situation.

[0083] After the flow control model is created by the supervised learning method, the initial values ​​of the three parameters A, B, and C are random numbers. According to Table 2 above, the CPU occupancy rate sample value, memory usage rate sample value, and unit transaction volume sample value contained in the sample data are input into the flow control model, and a delay time can be calculated. The calculated delay time can be called the calculation delay time. The calculation delay time is compared with the sample delay time in Table 2 to obtain the error, and then the three flow control model parameters A, B, and C are trained according to the back propagation algorithm and the error, and the three flow control model parameters A, B, and C are continuously updated to continuously reduce the error between the calculation delay time and the sample delay time. Finally, the appropriate flow control model parameters A, B, and C are calculated, so that the error between the calculation delay time and the sample delay time output by the flow control model is completely converged, that is, the error is within an acceptable range, and the training of the flow control model is completed to obtain the flow control model.

[0084] Among them, the back propagation algorithm (BP algorithm) is mainly composed of two links (excitation propagation and weight update) that are repeatedly iterated until the data output by the flow control model reaches a predetermined target range after obtaining sample data. In the embodiment of the present application, that is, the error between the calculated delay time and the sample delay time calculated by the trained three flow control model parameters A, B, and C for the input sample data is within the target range.

[0085] After obtaining the flow control model, the resource usage value and unit transaction volume of the first application server can be input into the flow control model, and then the delay time, that is, the delay, for transmitting financial transaction traffic to the first application server can be calculated through the flow control model.

[0086] S203: The control device sends a control instruction to the first transmission device.

[0087] The control device sends the control instruction to the first transmission device among M transmission devices connected to N application servers in the banking system, and the control instruction is used to instruct the first transmission device to send financial transaction traffic to the application server according to the calculated delay.

[0088] The first transmission device may be a transmission device connected to the first application server in the banking system.

[0089] If the first application server is connected to only one transmission device, the transmission device connected to the first application server is the first transmission device.

[0090] For example, in combination Figure 1In the transaction system shown, it is assumed that the resource usage value of the application server 123 is greater than the threshold value. Since the application server 123 is only connected to the transmission device 112, the control device 110 sends a control instruction to the transmission device 112 to control the transmission device 112 to transmit the financial transaction traffic to the application server 123 according to the indicated delay.

[0091] If the first application server is connected to multiple transmission devices, the first transmission device may be any one of the multiple transmission devices.

[0092] For example, in combination Figure 1 In the transaction system shown, assuming that the resource usage value of the application server 121 is greater than a threshold value, and the application server 121 is connected to the transmission device 111, the transmission device 112, and the transmission device 113, the first transmission device may be any one of the three transmission devices 111, the transmission device 112, and the transmission device 113. Exemplarily, the control device 110 may send a control instruction to the transmission device 111 to control the transmission device 111 to send the financial transaction flow to the application server 121 according to the indicated delay.

[0093] S204: The first transmission device receives a control instruction sent by the control device.

[0094] S205. The first transmission device sends the financial transaction traffic to the first application server according to the delay indicated by the control instruction.

[0095] After receiving the control instruction, the first transmission device sends the financial transaction traffic to the first application server according to the delay indicated by the control instruction.

[0096] Combination Figure 1 In the transaction system shown, if the first transmission device is the transmission device 111, the first application server is the application server 121, and the delay indicated by the control instruction is 1 second, then after receiving the control instruction sent by the control device 110, the transmission device 111 sends the financial transaction flow to the application server 121 after a delay of 1 second.

[0097] based on Figure 2In the embodiment shown, the control device adjusts the rate of financial transaction traffic transmitted by the transmission device to the application server according to the resource usage of the application server and the supervised learning method, that is, when the application server processes a large amount of financial transaction traffic, the financial transaction traffic is transmitted to the application server with delay, reducing the financial transaction traffic processed by the application server within a certain period of time, so that the application server can process the received financial transaction traffic as quickly as possible based on its own hardware resources, and then feedback the response message as soon as possible to ensure the smooth completion of the transaction. This avoids the situation where the application server cannot process the received financial transaction traffic as quickly as possible due to insufficient hardware resources when facing a large amount of financial transaction traffic, resulting in slow transactions, response timeouts, or even downtime.

[0098] A flow control method provided in an embodiment of the present application is described below with reference to a specific example.

[0099] For example, Figure 3 As shown, transmission device 111 is connected to application server 121, transmission device 112 is connected to application server 122, and transmission device 113 is connected to application server 123. If the resource usage values ​​of application servers 122 and 123 are greater than the threshold, and the unit transaction volume of application server 122 is 150, the CPU occupancy rate is 60%, and the memory usage rate is 50%, and the unit transaction volume of application server 123 is 190, the CPU occupancy rate is 90%, and the memory usage rate is 70%, the resource usage values ​​and unit transaction volumes of application servers 122 and 123 are input into the flow control model, and the following Table 3 can be obtained.

[0100] Table 3

[0101]

[0102] It can be seen from Table 3 above that the delay of the financial transaction traffic to be transmitted to the application server 122 calculated by the traffic control model is 3 seconds, and the delay of the financial transaction traffic to be transmitted to the application server 123 is 4 seconds.

[0103] Then, the control device 110 sends a first control instruction to the transmission device 112, instructing the transmission device 112 to send the financial transaction traffic to the application server 122 according to the delay indicated by the first control instruction. The control device 110 sends a second control instruction to the transmission device 113, instructing the transmission device 112 to send the financial transaction traffic to the application server 123 according to the delay indicated by the second transmission instruction.

[0104] The transmission device 112 sends the financial transaction traffic to the application server 122 according to the delay indicated by the first control instruction, that is, after waiting for 3 seconds, it sends the financial transaction traffic to the application server 122.

[0105] The transmission device 113 sends the financial transaction traffic to the application server 123 according to the delay indicated by the second control instruction, that is, after waiting for 4 seconds, it sends the financial transaction traffic to the application server 122.

[0106] Above Figure 1 The trading system shown includes a control device. In a possible embodiment, the trading system does not include a control device. The functions of the control device and the functions of the transmission device can be combined on the same physical device, that is, the transmission device can also have the function of the control device, that is, the transmission device can be considered as a control device. For example, Figure 4 As shown, an embodiment of the present application provides a structural schematic diagram of another trading system.

[0107] The trading system 40 includes at least one terminal (such as Figure 4 401 and 402 shown in the figure), the Internet 430 and the banking system 41. The banking system 41 includes M transmission devices (such as transmission device 411, transmission device 412 and transmission device 413) and N application servers (such as application server 421, application server 422 and application server 423).

[0108] The transmission device 411 is connected to the transmission device 412 and the application server 421 , and the transmission device 412 is connected to the transmission device 413 , the application server 421 , the application server 422 , and the application server 423 . The transmission device 413 is connected to the application server 423 .

[0109] For the description of the terminal, the Internet 430, the banking system 41, the transmission equipment and the application server, please refer to the above description of Figure 1 The description of the terminal, the Internet 130, the banking system 11, the transmission equipment and the application server will not be repeated here one by one. Figure 4 and Figure 1 The difference is that it is assumed that the transmission device 412 has the function of a control device, that is, the transmission device 412 is a transmission device with the function of a control device. The transmission device 412 needs to be connected to each application server in the bank system 41, that is, the transmission device 412 is connected to the application server 421, the application server 422 and the application server 423.

[0110] The transmission device 412 may obtain resource usage values ​​of the application server 421 , the application server 422 , and the application server 423 .

[0111] Assuming that the resource usage value of application server 422 is greater than the threshold, since application server 422 is only connected to transmission device 412, after transmission device 412 determines the delay of the financial transaction traffic to be transmitted to application server 422 according to the traffic control model, transmission device 412 can transmit the financial transaction traffic to application server 422 according to the delay.

[0112] Assuming that the resource usage value of application server 421 is greater than the threshold, since application server 421 is connected to transmission device 411 and transmission device 412, after transmission device 412 determines the delay of the financial transaction traffic to be transmitted to application server 422 according to the traffic control model, transmission device 412 can transmit the financial transaction traffic to application server 421 according to the delay.

[0113] The transmission device 412 may also send a control instruction to the transmission device 411 to control the transmission device 411 to transmit the financial transaction traffic to the application server 421 according to the indicated delay.

[0114] In a possible embodiment, the control device may allocate financial transaction traffic according to the relationship between the resource usage value of each application server and the threshold. Specifically, the control device preferentially allocates financial transaction traffic to application servers whose resource usage value is less than the threshold, and does not need to allocate financial transaction traffic to application servers whose resource usage value is greater than or equal to the threshold.

[0115] Exemplarily, the control device is connected to the first application server and the second application server as an example for description.

[0116] The control device obtains the resource usage values ​​of the first application server and the second application server. If the resource usage value of the first application server is greater than a threshold value, and the resource usage value of the second application server is less than a threshold value, that is, the resource usage value of the first application server is greater than the resource usage value of the second application server, it can be understood that the busyness of the first application server is greater than the busyness of the second application server. Therefore, the financial transaction traffic can be allocated to the second application server, and the second application server will process it. Specifically, the control device can send a control instruction to the transmission device connected to the second application server to control the transmission device to send the financial transaction traffic to the second application server.

[0117] It is understandable that if the resource usage of the first application server is not taken into consideration and financial transaction traffic is still allocated to the first application server, it may cause the first application server to experience slow transactions, response timeouts or even crashes due to insufficient hardware resources. The first application server may be unable to process the received financial transaction traffic in a timely manner, resulting in transaction failures and affecting customer experience.

[0118] The above mainly introduces the solution provided by the present application from the perspective of the interaction between each node. It is understandable that each node, such as a control device, includes a hardware structure and / or software module corresponding to each function in order to realize the above functions. It should be easily appreciated by those skilled in the art that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the present invention can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present invention.

[0119] The present application can divide the functional modules of the control device according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0120] Figure 5 A schematic diagram of the composition of a control device provided in an embodiment of the present application is shown. Figure 5 As shown, the control device 50 includes a processing unit 501, a receiving unit 502 and a sending unit 503. Optionally, the control device 50 may further include a storage unit 504.

[0121] The control device 50 may be a network device or a chip in the network device. When the control device 50 is used to implement the functions of the control device in the above embodiment, each unit is specifically used to implement the following functions.

[0122] The receiving unit 502 is used to obtain a resource usage value of the first application server, where the resource usage value is used to indicate the occupancy of resources used by the first application server to process financial transaction traffic, where the resources include computing resources and storage resources.

[0123] When the resource usage value is greater than or equal to the threshold, the processing unit 501 is used to determine the delay of the financial transaction traffic to be transmitted to the first application server according to the traffic control model, and the threshold is used to indicate the limit of resources allowed to be occupied by the first application server to process the financial transaction traffic.

[0124] The sending unit 503 is used to control the rate of transmitting the financial transaction traffic to the first application server according to the delay control.

[0125] Optionally, the processing unit 501 is specifically configured to input the resource usage value and the unit transaction volume of the first application server into the flow control model, and output the delay.

[0126] Optionally, the processing unit 501 is further configured to input the computing resource sample value, the storage resource sample value, and the unit transaction volume sample value into the flow control model, train the flow control model parameters, and obtain the flow control model until the delay output by the flow control model and the error of the delay sample value converge. The rate of transmitting the unit transaction volume sample value to the first application server is controlled according to the delay sample value, so that the first application server processes the unit transaction volume sample value based on the computing resource sample value and the storage resource sample value to achieve processing satisfaction.

[0127] Optionally, the processing unit 501 is specifically used to input computing resource sample values, storage resource sample values ​​and unit transaction volume sample values ​​into the flow control model, and train the flow control model parameters according to the back propagation algorithm until the delay output by the flow control model and the error of the delay sample value converge.

[0128] Optionally, the sending unit 503 is specifically configured to send a control instruction to the transmission device, where the control instruction is configured to instruct the transmission device to send financial transaction traffic to the first application server according to the delay.

[0129] Optionally, the sending unit 503 is specifically used to send a control instruction to a first transmission device among M transmission devices connected to N application servers in the system, where the first transmission device is a transmission device connected to the first application server, and M and N are both integers greater than or equal to 1.

[0130] Optionally, the storage unit 504 is used to store the delay of sending the financial transaction traffic to the first application server calculated by the traffic control model.

[0131] The storage unit 504 is also used to store control instructions.

[0132] The storage unit 504 is also used to store financial transaction flows.

[0133] Figure 5 The units in the system may also be referred to as modules. For example, a processing unit may be referred to as a processing module. Figure 5 In the illustrated embodiment, the names of the various units may not be the names shown in the figure. For example, the sending unit may also be called a communication unit.

[0134] Figure 5If each unit in the embodiment is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor (processor) to perform all or part of the steps of the various embodiments of the present application. The storage medium for storing computer software products includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program codes.

[0135] The present application also provides a hardware structure diagram of a control device, such as Figure 6 As shown, the control device 60 includes a processor 11, and optionally, further includes a memory 12 and a communication interface 13 connected to the processor 11. The processor 11, the memory 12 and the communication interface 13 are connected via a bus 14.

[0136] The processor 11 may be a central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor may also be any other device having a processing function, such as a circuit, a device, or a software module. The processor 11 may also include multiple CPUs, and the processor 11 may be a single-CPU processor or a multi-CPU processor. The processor here may refer to one or more devices, circuits, or processing cores for processing data (such as computer program instructions).

[0137] In the embodiment of the present application, the processor 11 may be used to implement the function of the processing unit 501 in the control device 50. Exemplarily, the processor 11 may be used to determine the delay of transmitting the financial transaction traffic to the first application server according to the traffic control model.

[0138] Optional, Figure 6The structural diagram shown can be used to illustrate the structure of the control device involved in the above embodiment. The processor 11 is used to control and manage the actions of the control device. The processor 11 can communicate with other devices through the communication interface 13, such as communicating with an application server. The memory 12 is used to store program code and data of the control device, for example, it can store resource usage values ​​of the application server.

[0139] The memory 12 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of an instruction or data structure and can be accessed by a computer, and the embodiment of the present application does not impose any restrictions on this. The memory 12 may exist independently or be integrated with the processor 11. Among them, the memory 12 may contain a computer program code. The processor 11 is used to execute the computer program code stored in the memory 12, thereby realizing the method provided in the embodiment of the present application. The communication interface 13 may be used to communicate with other devices or communication networks (such as Ethernet, radio access network (RAN), wireless local area networks (WLAN), etc.) The communication interface 13 may be a module, a circuit, a transceiver or any device capable of achieving communication.

[0140] The bus 14 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus 14 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0141] The embodiment of the present application also provides a computer-readable storage medium, including computer-executable instructions, which, when executed on a computer, enable the computer to execute any of the above methods.

[0142] The embodiment of the present application also provides a computer program product including computer-executable instructions, which, when executed on a computer, enables the computer to execute any of the above methods.

[0143] An embodiment of the present application also provides a chip, including: a processor and an interface, wherein the processor is coupled to a memory via the interface, and when the processor executes a computer program or a computer execution instruction in the memory, any one of the methods provided in the above embodiments is executed.

[0144] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer-executable instructions. When the computer-executable instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer-executable instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer-executable instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server, data center, etc. that contains one or more servers that can be integrated with the medium. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (eg, a solid state disk (SSD)).

[0145] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the claimed application, those skilled in the art may understand and implement other changes to the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple situations. A single processor or other unit may implement several functions listed in the claims. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.

[0146] Although the present application has been described in conjunction with specific features and embodiments thereof, it is obvious that various modifications and combinations may be made thereto without departing from the spirit and scope of the present application. Accordingly, this specification and the drawings are merely exemplary illustrations of the present application as defined by the appended claims, and are deemed to have covered any and all modifications, variations, combinations or equivalents within the scope of the present application. Obviously, those skilled in the art may make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

[0147] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A flow control method, characterized in that: include: Obtaining a resource usage value of the first application server, where the resource usage value is used to indicate the occupancy of resources used by the first application server to process financial transaction traffic, where the resources include computing resources and storage resources; When the resource usage value is greater than or equal to a threshold, determining a delay for transmitting the financial transaction traffic to the first application server according to a traffic control model, wherein the threshold is used to indicate a limit of resources allowed to be occupied by the first application server for processing the financial transaction traffic; controlling a rate of transmitting financial transaction traffic to the first application server based on the delay; The determining, according to the traffic control model, a delay for transmitting the financial transaction traffic to the first application server comprises: Input the resource usage value and the unit transaction volume of the first application server into the flow control model, and output the delay; Before determining the delay for transmitting the financial transaction traffic to the first application server according to the traffic control model, the method further includes: The computing resource sample value, storage resource sample value and unit transaction volume sample value are input into the flow control model, and the flow control model parameters are trained until the delay output by the flow control model and the error of the delay sample value converge, so as to obtain the flow control model, wherein the rate of transmitting the unit transaction volume sample value to the first application server is controlled according to the delay sample value, so that the first application server processes the unit transaction volume sample value based on the computing resource sample value and the storage resource sample value to achieve processing satisfaction.

2. The method according to claim 1, characterized in that: The step of inputting the computing resource sample value, the storage resource sample value and the unit transaction volume sample value into the flow control model and training the flow control model parameters until the delay output by the flow control model and the error of the delay sample value converge, comprises: The computing resource sample value, the storage resource sample value and the unit transaction volume sample value are input into the flow control model, and the flow control model parameters are trained according to the back propagation algorithm until the delay output by the flow control model and the error of the delay sample value converge.

3. The method according to claim 1 or 2, characterized in that: Controlling the rate of transmitting the financial transaction traffic to the first application server according to the delay includes: A control instruction is sent to a transmission device, where the control instruction is used to instruct the transmission device to send financial transaction traffic to the first application server according to the delay.

4. The method according to claim 3, characterized in that The sending of a control instruction to the transmission device comprises: The control instruction is sent to a first transmission device among M transmission devices connected to N application servers in a system, where the first transmission device is a transmission device connected to the first application server, and M and N are both integers greater than or equal to 1.

5. A control device, characterized in that: include: A receiving unit, configured to obtain a resource usage value of the first application server, wherein the resource usage value is used to indicate the occupancy of resources used by the first application server to process financial transaction traffic, wherein the resources include computing resources and storage resources; When the resource usage value is greater than or equal to a threshold, the processing unit is used to determine a delay of the financial transaction traffic to be transmitted to the first application server according to a traffic control model, wherein the threshold is used to indicate a limit of resources allowed to be occupied by the first application server for processing the financial transaction traffic; a sending unit, configured to control the rate of transmitting financial transaction traffic to the first application server according to the delay; The processing unit is specifically configured to input the resource usage value and the unit transaction volume of the first application server into the flow control model, and output the delay; The processing unit is further used to input the computing resource sample value, the storage resource sample value and the unit transaction volume sample value into the flow control model, train the flow control model parameters, and obtain the flow control model until the delay output by the flow control model and the error of the delay sample value converge, wherein the rate of transmitting the unit transaction volume sample value to the first application server is controlled according to the delay sample value, so that the first application server processes the unit transaction volume sample value based on the computing resource sample value and the storage resource sample value to achieve processing satisfaction.

6. A control device, characterized in that: include: A memory and a processor, wherein the memory is used to store a computer program, and the processor is used to execute the computer program so that the control device executes the method according to any one of claims 1 to 4.

7. A communication system, characterized in that: The method comprises: a control device, M transmission devices and N application servers, wherein the M transmission devices include a first transmission device, the N application servers include a first application server, the first application server is an application server whose resource usage value is greater than or equal to a threshold value among the N application servers, the first transmission device is a transmission device among the M transmission devices connected to the first application server, and M and N are both integers greater than or equal to 1; The control device is used to execute the method described in any one of claims 1 to 4 to control the rate at which the first transmission device transmits financial transaction traffic to the first application server based on the delay.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes computer instructions, and when the computer instructions are executed on a computer, the computer is caused to perform the method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Control method and device for message pushing and mobile terminal

    CN108076152A

  • Flow control method and device and mobile terminal

    CN108768870A