Current limiting method and device of bank system, medium and bank system

By building an operation timeout mapping relationship and a machine learning model, the release window and operation timeout are dynamically adjusted, which solves the problem of inflexible release window size adjustment in traditional flow control methods and achieves more reasonable resource allocation and user experience optimization.

CN120704881APending Publication Date: 2025-09-26中国邮政储蓄银行股份有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510819208.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-18
Publication Date
2025-09-26

AI Technical Summary

Technical Problem

Traditional flow limiting methods make it difficult to dynamically adjust the size of the release window based on actual business needs and user attributes, resulting in user operation errors and low business processing efficiency.

Method used

Build an operation timeout mapping relationship, combine the mapping of geographic location and operation timeout, predict user service duration through machine learning models, dynamically adjust the user capacity limit and operation timeout of the release window, and manage user requests in conjunction with the waiting queue.

Benefits of technology

It improves the flexibility of adjusting the release window size, rationally allocates resources, optimizes user experience and business processing efficiency, and avoids the sense of unfairness and system overload caused by current limiting.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120704881A_ABST
    Figure CN120704881A_ABST
Patent Text Reader

Abstract

The invention provides a current limiting method and device of a bank system, a medium and the bank system. The method comprises the steps that an operation timeout mapping relation is constructed, all pieces of user information to be processed are stored in a waiting queue, and the operation timeout mapping relation at least comprises a mapping relation between geographic positions and operation timeout time; according to the historical business handling duration of the to-be-processed user and the current business needing to be handled, the user accommodation upper limit of a release window is adjusted, and the release window is used for storing the user who currently handles the business; under the condition that the user to be processed is handling the service, the operation timeout time of the user to be processed is adjusted at least according to the operation timeout mapping relation and the geographic position, and the operation timeout time represents the duration of allowing the user to be processed to operate the current step. The problems that in the prior art, adjustment of the size of the release window lacks flexibility, and dynamic adjustment cannot be conducted according to actual service requirements and user attributes are solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of banking business processing, and in particular to a current limiting method for a banking system, a current limiting device for a banking system, a computer-readable storage medium, and a banking system. Background Art

[0002] Traditional rate limiting methods, such as algorithm-based rate limiting (fixed window, sliding window, leaky bucket, and token bucket algorithms) and system-level rate limiting (Nginx, Tomcat, and server-side rate limiting), struggle to comprehensively rate limit a user's access to a set of interfaces involved in a business process within a specific business scenario. When backend systems face capacity pressure, these methods often cause false negatives in user operations, impacting user experience and business processing efficiency. Existing technologies lack flexibility in adjusting the size of the release window, making it impossible to dynamically adjust based on actual business needs and user attributes. Summary of the Invention

[0003] The main purpose of this application is to provide a current limiting method for a banking system, a current limiting device for a banking system, a computer-readable storage medium and a banking system, so as to at least solve the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes.

[0004] In order to achieve the above-mentioned purpose, according to one aspect of the present application, a flow limiting method for a banking system is provided, which includes: constructing an operation timeout mapping relationship, storing the information of each user to be processed in a waiting queue, wherein the operation timeout mapping relationship includes at least a mapping relationship between a geographic location and an operation timeout period; adjusting the user capacity upper limit of a release window according to the historical business processing time and current business processing needs of the user to be processed, and the release window is used to store users who are currently processing business; when the user to be processed is processing business, and at least according to the operation timeout mapping relationship and the geographic location, adjusting the operation timeout period of the user to be processed, the operation timeout period represents the time length allowed for the user to be processed to operate the current step.

[0005] According to another aspect of the present application, a current limiting device for a banking system is provided, the device comprising: a first processing unit, configured to construct an operation timeout mapping relationship, and store information of each user to be processed in a waiting queue, wherein the operation timeout mapping relationship comprises at least a mapping relationship between a geographic location and an operation timeout period; a second processing unit, configured to adjust the upper limit of user accommodation in a release window according to the historical business processing time of the user to be processed and the current demand for processing business, wherein the release window is used to store users who are currently processing business; a third processing unit, configured to adjust the operation timeout period of the user to be processed when the user to be processed is processing business, and at least according to the operation timeout mapping relationship and the geographic location, wherein the operation timeout period represents the time period allowed for the user to be processed to operate the current step.

[0006] According to another aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium includes a stored program, wherein when the program is executed, the device where the computer-readable storage medium is located is controlled to execute any one of the methods described.

[0007] According to another aspect of the present application, a banking system is provided, which includes: a client, a gateway and a current limiting device, wherein the client communicates with the current limiting device through the gateway, and the current limiting device is used to execute any one of the methods described.

[0008] By applying the technical solution of the present application, the user capacity upper limit of the release window is adjusted according to the historical business processing time and current business processing needs of the users to be processed, thereby improving the flexibility of adjusting the size of the release window, and being able to dynamically adjust the size of the release window according to actual business needs and user attributes, and adjusting the operation timeout of the users to be processed at least according to the operation timeout mapping relationship and the geographical location, thereby further improving the flexibility of adjusting the size of the release window, making the resource allocation of the banking system more reasonable, and thus solving the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot dynamically adjust according to actual business needs and user attributes. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] The drawings that constitute part of this application are used to provide a further understanding of this application. The illustrative embodiments of this application and their descriptions are used to explain this application and do not constitute an improper limitation on this application. In the drawings:

[0010] Figure 1 A schematic diagram of a flow chart of a current limiting method for a banking system provided according to an embodiment of the present application is shown;

[0011] Figure 2A schematic diagram showing the principles of a push-out mechanism and a join mechanism in a current limiting method for a banking system provided in an embodiment of the present application is shown;

[0012] Figure 3 A schematic diagram showing the principles of three task mechanisms in a current limiting method for a banking system provided in an embodiment of the present application is shown;

[0013] Figure 4 A schematic diagram of the architecture of a current limiting method for a banking system provided according to an embodiment of the present application is shown;

[0014] Figure 5 A structural block diagram of a current limiting device for a banking system provided according to an embodiment of the present application is shown. DETAILED DESCRIPTION

[0015] It should be noted that, in the absence of conflict, the embodiments and features of the embodiments in this application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0016] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.

[0017] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present application described here. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0018] As introduced in the background technology, traditional flow limiting methods, such as algorithm-based flow limiting (fixed window algorithm, sliding window algorithm, leaky bucket algorithm, token bucket algorithm) and system-level flow limiting (Nginx, Tomcat, server-side flow limiting), are difficult to achieve overall flow limiting for a group of interfaces involved in the user's business process handling process in a business scenario. When the back-end system is under capacity pressure, these methods often cause false positives in user operations, affecting user experience and business processing efficiency. The existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes. In order to solve the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes, the embodiments of the present application provide a flow limiting method for a banking system, a flow limiting device for a banking system, a computer-readable storage medium and a banking system.

[0019] The technical solutions in the embodiments of the present invention will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present invention.

[0020] In this embodiment, a current limiting method for a banking system running on a mobile terminal, a computer terminal or a similar computing device is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0021] Figure 1 FIG. 1 is a flow chart of a current limiting method for a banking system according to an embodiment of the present application. Figure 1 As shown, the method includes the following steps:

[0022] Step S101: construct an operation timeout mapping relationship and store each pending user information in a waiting queue, wherein the operation timeout mapping relationship at least includes a mapping relationship between a geographical location and an operation timeout period;

[0023] Step S102: adjusting the upper limit of the user capacity of the release window based on the historical service processing time and current service processing needs of the pending users. The release window is used to store users who are currently processing services.

[0024] Step S103, when the user to be processed is handling business, and based at least on the operation timeout mapping relationship and the geographical location, the operation timeout of the user to be processed is adjusted, where the operation timeout represents the length of time allowed for the user to operate the current step.

[0025] In the above steps, the user capacity limit of the release window is adjusted according to the historical business processing time and current business processing needs of the users to be processed, thereby improving the flexibility of adjusting the size of the release window, and being able to dynamically adjust the size of the release window according to actual business needs and user attributes. In addition, the operation timeout of the above-mentioned users to be processed is adjusted at least according to the above-mentioned operation timeout mapping relationship and the above-mentioned geographical location, thereby further improving the flexibility of adjusting the size of the release window, making the resource allocation of the banking system more reasonable, and thus solving the problem of the existing technology in lacking flexibility in adjusting the size of the release window and being unable to dynamically adjust according to actual business needs and user attributes.

[0026] In one embodiment of the present application, step S102 adjusts the user accommodation limit of the release window based on the historical business processing time and the current business processing needs of the user to be processed, including: using a machine learning model to process the historical business processing time and the current business processing needs of the above-mentioned user to be processed; obtaining the predicted time for the above-mentioned user to be processed to complete the current business process output by the above-mentioned machine learning model; when the above-mentioned predicted time is greater than or equal to the time threshold, lowering the above-mentioned user accommodation limit of the above-mentioned release window; when the above-mentioned predicted time is less than the above-mentioned time threshold, increasing the above-mentioned user accommodation limit of the above-mentioned release window.

[0027] Specifically, adjusting the upper limit of the release window allows for a specific use case: high concurrent requests not only put a strain on the platform's technical architecture but also severely impact user experience, especially when backend services are slow to respond or the system is overloaded. In this scenario, employing machine learning models combined with dynamically adjusted release window policies can significantly improve system responsiveness and user experience. Specifically, historical user data must be collected, including but not limited to user level, historical service types, processing time, operation frequency, and account balance changes. System-level data, such as average processing time, resource usage, and network latency, must also be collected. Using this historical data set, a machine learning-based predictive model is built. This model can be complex, such as regression analysis, deep neural networks, or ensemble learning, to predict the time it will take a user to complete a business process in the current business scenario. The model should fully consider user behavioral characteristics and system status to improve prediction accuracy. Before a user request enters a business service, the gateway or rate-limiting scheduling service invokes the predictive model to analyze the user's current needs and historical behavior data in real time to predict the time it will take for the user to complete the business process. The predicted duration output by the model is compared with a set duration threshold (the duration threshold can be based on the usage time of core users). If the predicted duration is greater than or equal to the threshold, it indicates that users may need a long time to complete their transactions, which may lead to excessive resource utilization under high system load. In this case, the system lowers the user capacity limit of the release window to limit the number of concurrent users and avoid system overload. Conversely, if the predicted duration is less than the threshold, it indicates that users can complete their transactions quickly. In this case, the system raises the user capacity limit of the release window to allow more users to perform transactions simultaneously, improve processing efficiency, and shorten overall wait times. By monitoring system resource usage and user wait times, the effectiveness of dynamically adjusting the release window policy can be evaluated and fine-tuned as necessary. For example, if system resource utilization remains excessively high, the user capacity limit can be further lowered. Conversely, if resource usage is stable and wait times are reasonable, the current policy can be maintained or the user capacity limit can be raised again.

[0028] Specifically, high-equity users with shorter prediction times enjoy a smoother experience, enabling them to complete their transactions quickly even during peak hours, thereby increasing their satisfaction and loyalty. Dynamically adjusting the release window strategy ensures the proper allocation of resources, avoiding the perceived unfairness associated with random or one-size-fits-all throttling methods and making users experience a more personalized and intelligent service. Through dynamic adjustments guided by the prediction model, the platform can better balance resource allocation during peak periods, avoiding idle resources and improving operational efficiency.

[0029] The beneficial effects of adjusting the user capacity limit of the release window in specific usage scenarios: By using machine learning models to predict the length of time it takes for users to complete their tasks, the system load at different time points can be more accurately assessed, thereby increasing the number of released users when resources are sufficient, and reducing the number of users in the release window when high load is predicted, ensuring stable system operation. Traditional flow control methods may treat all users equally, causing some users to experience unnecessary waiting or denial of service when completing their tasks. Dynamically adjusting the release window based on the user's predicted duration can more fairly allocate service time to users with different needs and optimize the user experience. During business peak periods, the system can quickly identify and predict the impact of high-traffic users on service duration, and adjust the release window size in real time to avoid excessive load and ensure service continuity and responsiveness. By predicting user behavior through machine learning, the system can more accurately control the number of users in the release window, avoid over-allocation and waste of resources, and ensure system efficiency and stability during high-demand periods. Users with high equity levels or shorter predicted durations may still receive faster service when the system is under high pressure, while users with longer predicted durations may receive service during off-peak hours. This personalized service strategy helps to improve overall user satisfaction. When the model prediction is abnormal or the system resource monitoring data is abnormal, the dynamic adjustment mechanism can adjust the size of the release window in a timely manner to ensure that the system can provide stable service under any circumstances.

[0030] In one embodiment of the present application, the above-mentioned operation timeout mapping relationship also includes a mapping relationship between the above-mentioned geographic location, the equity level and the above-mentioned operation timeout period, and the above-mentioned equity level is a value determined based on the historical consumption amount, activity level and credit performance of the above-mentioned user to be processed; at least according to the above-mentioned operation timeout mapping relationship and the above-mentioned geographic location in step S103, the operation timeout period of the above-mentioned user to be processed is adjusted, including: adjusting the operation timeout period of the above-mentioned user to be processed according to the above-mentioned operation timeout mapping relationship, the above-mentioned geographic location and the above-mentioned equity level of the above-mentioned user to be processed.

[0031] Among them, users with higher equity levels are determined based on their historical spending, activity, and credit performance. Users with higher equity levels have longer operation timeouts, which means they have more time to complete business processes and avoid the inconvenience of interruptions due to system throttling, significantly improving the experience for high-value users. Users in specific geographic locations may require longer operation timeouts due to factors such as network latency, time zone differences, and activity participation. For example, overseas users may need additional time to navigate language barriers or understand localized processes. Therefore, providing longer operation timeouts ensures that these users receive the same high-quality service. By considering user equity level and location, the system can more fairly allocate operation time, ensuring that each user has the appropriate time to complete their business, avoiding user dissatisfaction caused by one-size-fits-all throttling policies. Dynamically adjusting operation timeouts allows the system to better control resources during high-load periods and avoid inefficient resource utilization. For example, setting the operation timeout to the actual duration required by the user can reduce the time users occupy system resources, thereby providing service opportunities for more users. By reasonably setting the operation timeout, you can effectively control the number of users in the release window, avoid system overload due to a large number of users occupying resources for a long time, and maintain service stability and reliability.

[0032] In one embodiment of the present application, adjusting the operation timeout of the above-mentioned user to be processed includes: when it is determined that the above-mentioned operation timeout needs to be increased, adjusting the above-mentioned operation timeout of the current operation to the sum of the remaining value of the above-mentioned operation timeout of the above-mentioned current operation and the operation timeout of the next operation, or adjusting the above-mentioned operation timeout of the above-mentioned current operation to the sum of the operation timeouts of two adjacent operations.

[0033] Specifically, it ensures that when users perform continuous operations, the entire business process will not be interrupted due to the timeout of a single operation. For example, if a user needs to switch between multiple pages or interfaces during the process of handling complex business (such as loan approval), by accumulating operation timeouts, the user can complete the entire process without restrictions, improving the continuity and smoothness of the user experience; the timeout period can be dynamically adjusted according to the user's actual operation speed and needs. If the user's operation speed is slow or spends more time on a certain step, the system will automatically allocate more time for subsequent steps to adapt to the user's behavior pattern and avoid unnecessary timeout warnings or service interruptions. By accumulating operation timeouts, the system can more accurately determine whether the user actually needs additional time. If the user times out on the current operation but expects the subsequent operation to be completed quickly, the accumulation strategy can avoid over-allocation of resources while ensuring that the user's service is not interrupted due to timeouts. In high-concurrency scenarios, the cumulative operation timeout can more smoothly control the user's stay in the system, avoiding resource peak pressure caused by a large number of users operating simultaneously in a short period of time, and helping to maintain system stability. This dynamic adjustment method can treat all users more fairly. For users with high equity levels and users in specific geographical locations, since their operation timeouts are longer, the cumulative strategy allows them to complete operations smoothly even during busy business hours, reducing the sense of unfairness caused by flow control.

[0034] In one embodiment of the present application, after storing each pending user information in a waiting queue, the above method further includes: within the anti-shake setting time, when a request for the same business processing type from the same pending user is received at least a preset number of times, the above pending user information is stored in a target type list, and the above target type list is used to store the above pending user information that does not require business processing.

[0035] Specifically, the preset number of times can be three, and the anti-shake setting time can be within 1 minute. By identifying and marking users who send too many repeated requests in a short period of time, the system can avoid processing these invalid or malicious requests, thereby reducing server burden, improving resource utilization, and ensuring that the system can respond to requests from other normal users. The existence of the target type list streamlines the waiting queue, retaining only the information of users who truly intend to complete the business process, reducing unnecessary queue lengths, and thus improving the system's response speed and processing efficiency for normal requests. For users who frequently send requests of the same business type, this behavior may indicate malicious attempts, such as DDoS attacks (Distributed Denial of Service attacks, a network attack method whose purpose is to overwhelm service websites, servers, or other network resources and make them unable to provide normal services) or fraudulent orders. Identifying and storing these users in the target type list allows for swift measures (such as adding additional verification, restricting access rights, etc.) to address potential security threats and protect the system from damage. Users who repeatedly send requests of the same business type in a short period of time may be due to operational errors or technical issues (such as repeated submissions caused by network delays). The target type list mechanism can help the system identify and filter these requests, reducing the confusion and misunderstanding that users may encounter due to repeated operations.

[0036] In one embodiment of the present application, in the process of adjusting the user capacity upper limit of the release window, the process includes: when the pending user information is within the release window, executing the current demand processing service for the pending user information; when the pending user information is not within the release window, the waiting queue is empty, and the release window is empty or not full, storing the pending user information in the release window and executing the current demand processing service for the pending user information; when the pending user information is not within the release window, the waiting queue is empty, and the release window is full, keeping the pending user information stored in the waiting queue; when the pending user information is not within the release window and the waiting queue is neither full nor empty, generating a first prompt message in a visual manner to indicate the current waiting queue length; when the pending user information is not within the release window and the waiting queue is full, generating a second prompt message in a visual manner to indicate that the waiting queue is full.

[0037] Specifically, by accurately determining whether user information is within the release window, efficient resource allocation is ensured, ensuring the system's rapid response to normal business operations while avoiding performance degradation caused by excessive release when system resources are tight. If user information is not within the release window and the waiting queue is empty, if the release window is not full, the user is directly stored in the release window and business needs are immediately responded to, improving the user experience. If the release window is full, the user is stored in the waiting queue, and a visual prompt informs the user of their current waiting status, avoiding long, unresponsive waits and enhancing their perception of system status. The waiting queue is checked for non-empty status. If the queue is not empty but not full, the user is informed of the current queue length in a visual way, which increases the transparency of the flow control policy and enables the user to understand his position in the queue, which helps to improve the user's acceptance of waiting time. When the waiting queue is full, the system generates a second prompt message in a visual way to inform the user that the queue is full, avoiding meaningless waiting for the user, and also avoiding further waste of system resources, maintaining efficient operation of the system. When the waiting queue is full, the system no longer accepts new user requests, thereby avoiding excessive consumption of resources, ensuring that the system can still maintain stable operation under high load conditions, and avoiding the risk of system crashes. Through clear prompt information, users can adjust their operations according to the current busyness of the system, such as choosing to try the business again during off-peak hours, which helps to reduce the pressure on the system during peak hours.

[0038] In one embodiment of the present application, in the process of adjusting the user accommodation upper limit of the release window, the above method also includes: determining the parameters and programs corresponding to the above-mentioned current demand processing business, obtaining the target parameters and target program; starting the above-mentioned target program and configuring the above-mentioned target parameters to build a business scenario; calling the gateway service to read the above-mentioned business scenario in the configuration service; calling the current limiting scheduling service to clean up the above-mentioned pending user information of the above-mentioned pending users whose requests have timed out; after adjusting the operation timeout time of the above-mentioned pending users, the above method also includes: after completing the above-mentioned current demand processing business, calling the current limiting management consumption service to determine the message notification related to the above-mentioned pending user from the message queue to clean up the above-mentioned pending user information in the above-mentioned release window.

[0039] By pre-determining the parameters and procedures that best match business needs, we can ensure that the optimal configuration is used when building business scenarios, reduce unnecessary resource consumption, speed up system response, and improve resource utilization efficiency. The flow control scheduling service proactively clears user information whose requests have timed out, preventing timed-out users from continuing to occupy limited release window resources, ensuring the effectiveness and efficient operation of the release window; after the user completes the business, the flow control management consumption service receives a message notification and can immediately clear the user information in the release window, preventing invalid users from occupying resources, while also reducing potential security risks; after determining the parameters and procedures corresponding to the business, the system can execute business processes more smoothly, reduce delays or errors caused by improper configuration, and improve the continuity and satisfaction of the user experience.

[0040] This application adds a request waiting queue component based on the existing solution, such as Figure 2 As shown, users who are currently unable to enter the release window can be stored. Because users enter the queue and have a priority order for requesting service, the system can process waiting users on a first-come, first-served basis based on the queue data, ensuring fairness in timing. The added functions include:

[0041] If the scene current limit switch is turned on:

[0042] 1. If the user is in the release window, then release him / her;

[0043] 2. If the user is not in the release window, first determine the request waiting queue;

[0044] 2.1. If the request waiting queue is empty, the request is placed in the release window. If the release window is empty or not full, the request is placed in the release window and released. If the release window is full, the request is placed in the request waiting queue.

[0045] 2.2. If the request waiting queue is not empty, put it into the request waiting queue and return the queue length. It can return "The current waiting queue length is XXX, please wait patiently";

[0046] 2.3. If the request queue is full, the message "Business is busy, please try again later" will be returned.

[0047] For the joining mechanism, the number of users in the release window is polled regularly according to the release window polling interval. If it is less than the upper limit of the release window, a preset number of users are moved from the head of the request waiting queue to the release window.

[0048] like Figure 3As shown, in real-world scenarios where traffic is limited, the volume of user requests does not necessarily remain constant. The distribution of user interface operations can also fluctuate with the different stages of an activity. To better serve users and maximize system performance and capacity utilization, dynamic and automatic adjustment of the release window would be more practical. Therefore, in addition to the aforementioned functionality, dynamic adjustment of the release window is added, encompassing both the release window parameters and the user's parameters. This adjustment mechanism allows for manual adjustments to the release window size during an activity, as well as automatic adjustments based on a predefined release window adjustment function and user attributes. Parameters related to the release window include the parameters of the release window, the parameters of the user, and the last operation time. Specifically, the parameters of the release window include the initial value of the release window, the maximum value of the release window, and the release window adjustment function. When this flow control scenario is created, the release window will be initialized according to the "initial value of the release window", and then according to the "release window adjustment function", it will increase or decrease until it is less than or equal to the "maximum value of the release window", and then stop adjusting. The user's parameters include the initial time when the user enters the release window, the user's equity level (the equity level is a growth value of the user calculated based on the tasks, deposits, transfer amounts, activity, etc. completed by the user in the business system. The higher the level, the more equity the user has), and the user's geographic location (for example, the branch that promotes the business will provide more operation time). This allows users with higher equity levels and customers in active geographic locations to get more operation time in the release window.

[0049] Based on the user's last operation time in the release window, you can set a) if an operation occurs, the "initial timeout" will be automatically extended based on the current time, or b) if a new operation occurs, the timeout will be further extended by the "incremental timeout".

[0050] For example: if the user enters the release window at 10:00:00, the initial timeout is 20 seconds, and the incremental timeout after the operation is 5 seconds, the user should be cleared at 10:00:20. If mode a is used, 20 seconds will be added to the current time after the user operates once; if mode b is used, 5 seconds will be added after the user operates once; based on the user's rights level and geographical location, users with higher rights can be given a longer initial timeout according to the configuration, for example, the normal timeout is 20 seconds, and the timeout for users with higher levels increases by 10 seconds for each additional level; if the address location is set by the configuration, for example, City A is set, then when the user is from City A, the initial configuration timeout is increased by 10 seconds to 30 seconds.

[0051] The meaning of the fields in the data structure / configuration of the current limiting scenario is:

[0052] Scenario ID: A globally unique ID. Use this ID to obtain all the configurations of the scene.

[0053] Scenario name: The Chinese name of the scenario, mainly used for prompts, such as loan scenario and cash voucher redemption scenario;

[0054] Scene switch: turn on or off, the scene takes effect when turned on;

[0055] Customer flow limiting identification mode: based on customer number / based on mobile phone number; (customer unique identification);

[0056] Initial release window value: When creating a flow control scenario, the initial setting value is used, for example, 500 customers are initially released;

[0057] Release window upper limit (threshold): The release window may be adjusted manually or dynamically, but the adjusted value must be lower than this value. For example, it may be initialized to 500. Any value that can be changed based on dynamic adjustment configuration or manual configuration must be lower than the upper limit.

[0058] Release window operating maximum value (operating value): The release window may be adjusted manually or dynamically. After adjusting this value, the release window will be expanded or reduced accordingly, but it cannot exceed the upper limit;

[0059] Release window adjustment function switch: turn on or off. When turned on, the maximum value of the release window will change dynamically according to the set function;

[0060] Release window adjustment function: linear function / logarithmic function or other custom function;

[0061] Waiting queue size: the number of users that the waiting queue can accommodate;

[0062] Initial timeout (extend the initial timeout after operation): After the user enters the release window, they can perform operations. At the same time, a timeout will be recorded for the user. This time can be changed dynamically. When the time is reached, the user will be cleared. The initial operation time can be configured with different initial timeouts based on the customer's equity level and geographical location, so that higher-level customers or customers in a specified geographical location can obtain more timeouts.

[0063] Maximum timeout: The user's timeout will change dynamically, but the final value of the change cannot exceed the maximum timeout, so as to prevent the user from being cleared.

[0064] Incremental timeout (additional incremental timeout after operation): The timeout will be extended accordingly after each operation, but the extended value cannot exceed the maximum timeout.

[0065] Extended timeout mode: a) Extend the initial timeout after the operation / b) Add incremental timeout after the operation. You can choose either of the two modes.

[0066] Extension of time after business completion: When a user completes a business, the flow control device will clear the user after the extension of the time limit, leaving a request slot for other users; that is, after the user completes the business, the user is given some time to review the process or check the business data;

[0067] Customer benefit level and initial timeout and incremental timeout rules: This can be configured in each scenario. For level 1 customers, the initial timeout is 10 seconds and the incremental timeout is 5 seconds; for level 2 customers, the initial timeout is 20 seconds and the incremental timeout is 10 seconds.

[0068] Geographic location and initial and incremental timeout rules: This can be configured in each scenario. For customers in Beijing, the initial timeout is 10 seconds and the incremental timeout is 5 seconds; for customers in Shanghai, the initial timeout is 20 seconds and the incremental timeout is 10 seconds.

[0069] Current limiting interface list: This constitutes a business scenario and contains all interfaces that need to be configured for current limiting control. These interfaces can be separated by commas and configured in this field. At this time, the interface will be current limited by this current limiting device. When one of the interfaces is operated, the information will be sent to the message queue, and the current limiting management consumer service will consume the message and dynamically adjust the timeout time of the user according to the extended timeout mode.

[0070] Completion interface list: To complete the entire business process, the possible interfaces that may be called can be separated by commas and configured in this field. When the business process operation is completed, the information will be sent to the message queue, and the flow control management consumption service will consume the message and set the user's timeout time to the current time after the "extended time after completion" time.

[0071] Blacklist: Customers on the blacklist will not be able to receive services. This can be used to pre-configure malicious customers of black market, or to detect abnormal situations of malicious order-swiping and wool-pulling in real time, and to limit and ban users in real time based on user information.

[0072] Whitelist: Customers on the whitelist are not subject to throttling and can always access services. Whitelists can be used to verify business functions or for extremely important customers.

[0073] like Figure 4 As shown, the gateway service is part of the business system service, generally at the forefront of the business system, accepting requests, distributing requests, and performing some business-independent public logic processing;

[0074] Business service: It is a part of the business system service and generally carries business logic;

[0075] Management service: The management end of this current limiting device can configure the current limiting business scenario;

[0076] Configuration service: This is where the configuration of the current limiting device is stored, and when the configuration changes, other services will pull the latest configuration;

[0077] Current Limit Scheduling Service: This service reads the current limit scenarios configured in the configuration service, creates and adjusts them in real time. The data structures for creating and adjusting these scenarios have been described previously. Furthermore, the current limit scheduling service has three scheduled tasks. Based on the configured polling time, these tasks are: Task 1 - Cleaning up timed-out users; Task 2 - Pulling users from the waiting queue to the release window; and Task 3 - Dynamically and automatically adjusting the release window size.

[0078] Message queue: carries all user operations, that is, interface calls, and records them as a message;

[0079] Current limiting management consumption service: The current limiting management consumption service consumes the user's related operations in the message queue. If the interface content is configured in the current limiting scenario, the user will be delayed for a timeout period. If the interface content is configured in the current limiting scenario, the user will be set to a timeout period to prepare for subsequent kick-out operations.

[0080] Release window: When a user joins this window, he or she can operate all interfaces in this scenario without being restricted;

[0081] Waiting queue: When a user joins this queue, the user can queue up and be placed into the release window in order.

[0082] Description of system high availability: Disaster recovery: The device can be used in off-site disaster recovery and active-active scenarios. Therefore, it is deployed in two off-site centers in the Postal Savings Bank of China. If the system in any center crashes, the other center can use 100% of the services. High availability of services: Each service in the device has been designed with cluster high availability and master-slave high availability. If any service crashes, another backup service can take over the service. Anti-shake (preventing short-term repeated requests): Since this function is used for current limiting in high-concurrency scenarios to protect the performance of this system or the background system, a prevention strategy is designed for when users frequently initiate requests in a short period of time. It mainly adds a delay time through the client's buttons and refreshes. After clicking the button or refreshing, the same next request cannot be initiated within a period of time (for example, only one refresh in 500 milliseconds). When the server finds that the user has such a request, it can be identified as an abnormal customer, which can be used to identify whether it is a malicious request. If it is a malicious request, it can also be added to the blacklist.

[0083] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0084] The embodiments of the present application also provide a current limiting device for a banking system. It should be noted that the current limiting device for a banking system in the embodiments of the present application can be used to execute the current limiting method for a banking system provided in the embodiments of the present application. The device is used to implement the above-mentioned embodiments and preferred implementation methods, and the details that have been explained will not be repeated here. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and conceivable.

[0085] The following introduces the current limiting device of the banking system provided in the embodiment of the present application.

[0086] Figure 5 This is a structural block diagram of a current limiting device for a banking system provided according to an embodiment of the present application. Figure 5 As shown, the device includes:

[0087] The first processing unit 51 is used to construct an operation timeout mapping relationship and store the information of each user to be processed in a waiting queue, wherein the above-mentioned operation timeout mapping relationship at least includes a mapping relationship between a geographic location and an operation timeout period; the second processing unit 52 is used to adjust the user capacity upper limit of the release window according to the historical business processing time and current business processing needs of the user to be processed, and the above-mentioned release window is used to store users who are currently processing business; the third processing unit 53 is used to adjust the operation timeout period of the above-mentioned user to be processed when the above-mentioned user to be processed is processing business, and at least according to the above-mentioned operation timeout mapping relationship and the above-mentioned geographic location, and the above-mentioned operation timeout period represents the time length allowed for the above-mentioned user to be processed to operate the current step.

[0088] In the above-mentioned device, the user capacity upper limit of the release window is adjusted according to the historical business processing time and current business processing needs of the users to be processed, thereby improving the flexibility of adjusting the size of the release window, and being able to dynamically adjust the size of the release window according to actual business needs and user attributes. In addition, the operation timeout period of the above-mentioned users to be processed is adjusted at least according to the above-mentioned operation timeout mapping relationship and the above-mentioned geographical location, thereby further improving the flexibility of adjusting the size of the release window, making the resource allocation of the banking system more reasonable, and thus solving the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes.

[0089] In one embodiment of the present application, the second processing unit includes a first processing module, a second processing module, a third processing module and a fourth processing module. The first processing module is used to use a machine learning model to process the historical business processing time of the above-mentioned user to be processed and the above-mentioned current demand processing business; the first processing module is used to obtain the predicted time for the above-mentioned user to be processed to complete the current business process output by the above-mentioned machine learning model; the third processing module is used to reduce the above-mentioned user accommodation upper limit of the above-mentioned release window when the above-mentioned predicted time is greater than or equal to the time threshold; the fourth processing module is used to increase the above-mentioned user accommodation upper limit of the above-mentioned release window when the above-mentioned predicted time is less than the above-mentioned time threshold.

[0090] Specifically, adjusting the upper limit of the release window allows for a specific use case: high concurrent requests not only put a strain on the platform's technical architecture but also severely impact user experience, especially when backend services are slow to respond or the system is overloaded. In this scenario, employing machine learning models combined with dynamically adjusted release window policies can significantly improve system responsiveness and user experience. Specifically, historical user data must be collected, including but not limited to user level, historical service types, processing time, operation frequency, and account balance changes. System-level data, such as average processing time, resource usage, and network latency, must also be collected. Using this historical data set, a machine learning-based predictive model is built. This model can be complex, such as regression analysis, deep neural networks, or ensemble learning, to predict the time it will take a user to complete a business process in the current business scenario. The model should fully consider user behavioral characteristics and system status to improve prediction accuracy. Before a user request enters a business service, the gateway or rate-limiting scheduling service invokes the predictive model to analyze the user's current needs and historical behavior data in real time to predict the time it will take for the user to complete the business process. The predicted duration output by the model is compared with a set duration threshold (the duration threshold can be based on the usage time of core users). If the predicted duration is greater than or equal to the threshold, it indicates that users may need a long time to complete their transactions, which may lead to excessive resource utilization under high system load. In this case, the system lowers the user capacity limit of the release window to limit the number of concurrent users and avoid system overload. Conversely, if the predicted duration is less than the threshold, it indicates that users can complete their transactions quickly. In this case, the system raises the user capacity limit of the release window to allow more users to perform transactions simultaneously, improve processing efficiency, and shorten overall wait times. By monitoring system resource usage and user wait times, the effectiveness of dynamically adjusting the release window policy can be evaluated and fine-tuned as necessary. For example, if system resource utilization remains excessively high, the user capacity limit can be further lowered. Conversely, if resource usage is stable and wait times are reasonable, the current policy can be maintained or the user capacity limit can be raised again.

[0091] Specifically, high-equity users with shorter prediction times enjoy a smoother experience, enabling them to complete their transactions quickly even during peak hours, thereby increasing their satisfaction and loyalty. Dynamically adjusting the release window strategy ensures the proper allocation of resources, avoiding the perceived unfairness associated with random or one-size-fits-all throttling methods and making users experience a more personalized and intelligent service. Through dynamic adjustments guided by the prediction model, the platform can better balance resource allocation during peak periods, avoiding idle resources and improving operational efficiency.

[0092] The beneficial effects of adjusting the user capacity limit of the release window in specific usage scenarios: By using machine learning models to predict the length of time it takes for users to complete their tasks, the system load at different time points can be more accurately assessed, thereby increasing the number of released users when resources are sufficient, and reducing the number of users in the release window when high load is predicted, ensuring stable system operation. Traditional flow control methods may treat all users equally, causing some users to experience unnecessary waiting or denial of service when completing their tasks. Dynamically adjusting the release window based on the user's predicted duration can more fairly allocate service time to users with different needs and optimize the user experience. During business peak periods, the system can quickly identify and predict the impact of high-traffic users on service duration, and adjust the release window size in real time to avoid excessive load and ensure service continuity and responsiveness. By predicting user behavior through machine learning, the system can more accurately control the number of users in the release window, avoid over-allocation and waste of resources, and ensure system efficiency and stability during high-demand periods. Users with high equity levels or shorter predicted durations may still receive faster service when the system is under high pressure, while users with longer predicted durations may receive service during off-peak hours. This personalized service strategy helps to improve overall user satisfaction. When the model prediction is abnormal or the system resource monitoring data is abnormal, the dynamic adjustment mechanism can adjust the size of the release window in a timely manner to ensure that the system can provide stable service under any circumstances.

[0093] In one embodiment of the present application, the above-mentioned operation timeout mapping relationship also includes a mapping relationship between the above-mentioned geographic location, equity level and the above-mentioned operation timeout period, and the above-mentioned equity level is a value determined based on the historical consumption amount, activity level and credit performance of the above-mentioned user to be processed; the third processing unit includes a fifth processing module, which is used to adjust the operation timeout period of the above-mentioned user to be processed based on the above-mentioned operation timeout mapping relationship, the above-mentioned geographic location and the above-mentioned equity level of the above-mentioned user to be processed.

[0094] Among them, users with higher equity levels are determined based on their historical spending, activity, and credit performance. Users with higher equity levels have longer operation timeouts, which means they have more time to complete business processes and avoid the inconvenience of interruptions due to system throttling, significantly improving the experience for high-value users. Users in specific geographic locations may require longer operation timeouts due to factors such as network latency, time zone differences, and activity participation. For example, overseas users may need additional time to navigate language barriers or understand localized processes. Therefore, providing longer operation timeouts ensures that these users receive the same high-quality service. By considering user equity level and location, the system can more fairly allocate operation time, ensuring that each user has the appropriate time to complete their business, avoiding user dissatisfaction caused by one-size-fits-all throttling policies. Dynamically adjusting operation timeouts allows the system to better control resources during high-load periods and avoid inefficient resource utilization. For example, setting the operation timeout to the actual duration required by the user can reduce the time users occupy system resources, thereby providing service opportunities for more users. By reasonably setting the operation timeout, you can effectively control the number of users in the release window, avoid system overload due to a large number of users occupying resources for a long time, and maintain service stability and reliability.

[0095] In one embodiment of the present application, the third processing unit includes a sixth processing module, which is used to adjust the operation timeout time of the current operation to the sum of the remaining value of the operation timeout time of the current operation and the operation timeout time of the next operation when it is determined that the operation timeout time needs to be increased, or to adjust the operation timeout time of the current operation to the sum of the operation timeout times of two adjacent operations.

[0096] Specifically, it ensures that when users perform continuous operations, the entire business process will not be interrupted due to the timeout of a single operation. For example, if a user needs to switch between multiple pages or interfaces during the process of handling complex business (such as loan approval), by accumulating operation timeouts, the user can complete the entire process without restrictions, improving the continuity and smoothness of the user experience; the timeout period can be dynamically adjusted according to the user's actual operation speed and needs. If the user's operation speed is slow or spends more time on a certain step, the system will automatically allocate more time for subsequent steps to adapt to the user's behavior pattern and avoid unnecessary timeout warnings or service interruptions. By accumulating operation timeouts, the system can more accurately determine whether the user actually needs additional time. If the user times out on the current operation but expects the subsequent operation to be completed quickly, the accumulation strategy can avoid over-allocation of resources while ensuring that the user's service is not interrupted due to timeouts. In high-concurrency scenarios, the cumulative operation timeout can more smoothly control the user's stay in the system, avoiding resource peak pressure caused by a large number of users operating simultaneously in a short period of time, and helping to maintain system stability. This dynamic adjustment method can treat all users more fairly. For users with high equity levels and users in specific geographical locations, since their operation timeouts are longer, the cumulative strategy allows them to complete operations smoothly even during busy business hours, reducing the sense of unfairness caused by flow control.

[0097] In one embodiment of the present application, the above-mentioned device also includes a fourth processing unit, which is used to store the above-mentioned user information to be processed in the waiting queue, and when the request for the same business processing type from the same above-mentioned user to be processed is received at least a preset number of times within the anti-jitter setting time, the above-mentioned user information to be processed is stored in the target type list, and the above-mentioned target type list is used to store the above-mentioned user information to be processed that does not require business processing.

[0098] Specifically, the preset number of times can be three, and the anti-shake setting time can be within 1 minute. By identifying and marking users who send too many repeated requests in a short period of time, the system can avoid processing these invalid or malicious requests, thereby reducing server burden, improving resource utilization, and ensuring that the system can respond to requests from other normal users. The existence of the target type list streamlines the waiting queue, retaining only the information of users who truly intend to complete the business process, reducing unnecessary queue lengths, and thus improving the system's response speed and processing efficiency for normal requests. For users who frequently send requests of the same business type, this behavior may indicate malicious attempts, such as DDoS attacks (Distributed Denial of Service attacks, a network attack method whose purpose is to overwhelm service websites, servers, or other network resources and make them unable to provide normal services) or fraudulent orders. Identifying and storing these users in the target type list allows for swift measures (such as adding additional verification, restricting access rights, etc.) to address potential security threats and protect the system from damage. Users who repeatedly send requests of the same business type in a short period of time may be due to operational errors or technical issues (such as repeated submissions caused by network delays). The target type list mechanism can help the system identify and filter these requests, reducing the confusion and misunderstanding that users may encounter due to repeated operations.

[0099] In one embodiment of the present application, the above-mentioned device also includes a fifth processing unit, a sixth processing unit, a seventh processing unit, an eighth processing unit and a ninth processing unit. The fifth processing unit is used to, in the process of adjusting the user capacity upper limit of the release window, execute the above-mentioned current demand processing business of the above-mentioned user information to be processed when the above-mentioned user information to be processed is within the above-mentioned release window; the sixth processing unit is used to store the above-mentioned user information to be processed in the above-mentioned release window and execute the above-mentioned current demand processing business of the above-mentioned user information to be processed when the above-mentioned user information to be processed is not within the above-mentioned release window, the above-mentioned waiting queue is empty, and the above-mentioned release window is empty or not full. Processing business; the seventh processing unit is used to keep the above-mentioned user information to be processed stored in the above-mentioned waiting queue when the above-mentioned user information to be processed is not in the above-mentioned release window, the above-mentioned waiting queue is empty, and the above-mentioned release window is full; the eighth processing unit is used to generate a first prompt message in a visual manner to prompt the current length of the waiting queue when the above-mentioned user information to be processed is not in the above-mentioned release window and the above-mentioned waiting queue is neither full nor empty; the ninth processing unit is used to generate a second prompt message in a visual manner to prompt that the above-mentioned waiting queue is full when the above-mentioned user information to be processed is not in the above-mentioned release window and the above-mentioned waiting queue is full.

[0100] Specifically, by accurately determining whether user information is within the release window, efficient resource allocation is ensured, ensuring the system's rapid response to normal business operations while avoiding performance degradation caused by excessive release when system resources are tight. If user information is not within the release window and the waiting queue is empty, if the release window is not full, the user is directly stored in the release window and business needs are immediately responded to, improving the user experience. If the release window is full, the user is stored in the waiting queue, and a visual prompt informs the user of their current waiting status, avoiding long, unresponsive waits and enhancing their perception of system status. The waiting queue is checked for non-empty status. If the queue is not empty but not full, the user is informed of the current queue length in a visual way, which increases the transparency of the flow control policy and enables the user to understand his position in the queue, which helps to improve the user's acceptance of waiting time. When the waiting queue is full, the system generates a second prompt message in a visual way to inform the user that the queue is full, avoiding meaningless waiting for the user, and also avoiding further waste of system resources, maintaining efficient operation of the system. When the waiting queue is full, the system no longer accepts new user requests, thereby avoiding excessive consumption of resources, ensuring that the system can still maintain stable operation under high load conditions, and avoiding the risk of system crashes. Through clear prompt information, users can adjust their operations according to the current busyness of the system, such as choosing to try the business again during off-peak hours, which helps to reduce the pressure on the system during peak hours.

[0101] In one embodiment of the present application, the above-mentioned device also includes a determination unit, a tenth processing unit, a first calling unit, a second calling unit and a third calling unit. The determination unit is used to determine the parameters and programs corresponding to the above-mentioned current demand processing business in the process of adjusting the user capacity upper limit of the release window, and obtain the target parameters and target program; the tenth processing unit is used to start the above-mentioned target program and configure the above-mentioned target parameters to build a business scenario; the first calling unit is used to call the gateway service to read the above-mentioned business scenario in the configuration service; the second calling unit is used to call the current limiting scheduling service to clean up the above-mentioned pending user information of the above-mentioned pending users whose requests have timed out; the third calling unit is used to adjust the operation timeout time of the above-mentioned pending users, and after completing the above-mentioned current demand processing business, call the current limiting management consumption service to determine the message notification related to the above-mentioned pending users from the message queue to clean up the above-mentioned pending user information in the above-mentioned release window.

[0102] By pre-determining the parameters and procedures that best match business needs, we can ensure that the optimal configuration is used when building business scenarios, reduce unnecessary resource consumption, speed up system response, and improve resource utilization efficiency. The flow control scheduling service proactively clears user information whose requests have timed out, preventing timed-out users from continuing to occupy limited release window resources, ensuring the effectiveness and efficient operation of the release window; after the user completes the business, the flow control management consumption service receives a message notification and can immediately clear the user information in the release window, preventing invalid users from occupying resources, while also reducing potential security risks; after determining the parameters and procedures corresponding to the business, the system can execute business processes more smoothly, reduce delays or errors caused by improper configuration, and improve the continuity and satisfaction of the user experience.

[0103] The current limiting device of the banking system includes a processor and a memory. The first, second, and third processing units are stored as program units in the memory, and the processor executes the program units stored in the memory to implement corresponding functions. The modules are all located in the same processor; alternatively, the modules can be located in different processors in any combination.

[0104] The processor contains a kernel, which retrieves the corresponding program unit from memory. One or more kernels can be configured. By adjusting kernel parameters, this solves the problem of existing technologies lacking flexibility in adjusting the release window size, preventing dynamic adjustments based on actual business needs and user attributes.

[0105] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0106] An embodiment of the present invention provides a computer-readable storage medium, which includes a stored program. When the program is running, the device where the computer-readable storage medium is located is controlled to execute the current limiting method of the banking system.

[0107] An embodiment of the present invention provides a processor, which is used to run a program, wherein the current limiting method of the banking system is executed when the program is running.

[0108] An embodiment of the present invention provides a device comprising a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, at least the following steps are implemented: constructing an operation timeout mapping relationship and storing each pending user's information in a waiting queue, wherein the operation timeout mapping relationship at least includes a mapping relationship between a geographic location and an operation timeout period; adjusting the upper limit of a user capacity of a release window based on the pending user's historical business processing time and current business processing needs, wherein the release window is used to store users currently processing business; when the pending user is currently processing business, and based at least on the operation timeout mapping relationship and the geographic location, adjusting the operation timeout period of the pending user, wherein the operation timeout period represents the length of time allowed for the pending user to operate the current step. The device herein may be a server, a PC, a PAD, a mobile phone, etc.

[0109] The present application also provides a computer program product, which, when executed on a data processing device, is suitable for executing a program that is initialized with at least the following method steps: constructing an operation timeout mapping relationship, storing the information of each user to be processed in a waiting queue, wherein the above-mentioned operation timeout mapping relationship at least includes a mapping relationship between a geographic location and an operation timeout period; adjusting the user capacity upper limit of a release window based on the historical business processing time of the user to be processed and the current demand for processing business, and the above-mentioned release window is used to store users who are currently processing business; when the above-mentioned user to be processed is processing business, and at least based on the above-mentioned operation timeout mapping relationship and the above-mentioned geographic location, adjusting the operation timeout period of the above-mentioned user to be processed, the above-mentioned operation timeout period represents the time length allowed for the above-mentioned user to be processed to operate the current step.

[0110] The present application also provides a banking system, which includes: a client, a gateway, and a current limiting device. The client communicates with the current limiting device through the gateway, and the current limiting device is used to execute any of the above methods. According to the historical business processing time and current business processing needs of the users to be processed, the user capacity upper limit of the release window is adjusted, thereby improving the flexibility of adjusting the size of the release window, and being able to dynamically adjust the size of the release window according to actual business needs and user attributes, and at least according to the above operation timeout mapping relationship and the above geographical location, adjusting the operation timeout time of the above user to be processed, thereby further improving the flexibility of adjusting the size of the release window, making the resource allocation of the banking system more reasonable, and thus solving the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes.

[0111] Obviously, those skilled in the art will appreciate that the various modules or steps of the present invention described above can be implemented using a general-purpose computing device, can be centralized on a single computing device, or can be distributed across a network of multiple computing devices. They can be implemented using program code executable by the computing device, and thus, can be stored in a storage device and executed by the computing device. In some cases, the steps shown or described herein can be performed in a different order than that shown, or can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.

[0112] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0113] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0114] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0115] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps for the function specified in one or more boxes.

[0116] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.

[0117] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0118] Computer-readable media includes permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic disk storage or other magnetic storage devices, or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory media such as modulated data signals and carrier waves.

[0119] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0120] From the above description, it can be seen that the above embodiments of the present application achieve the following technical effects:

[0121] 1) The current limiting method of the banking system of the present application adjusts the user capacity upper limit of the release window according to the historical business processing time and current business processing needs of the users to be processed, thereby improving the flexibility of adjusting the size of the release window, and can dynamically adjust the size of the release window according to actual business needs and user attributes. In addition, the operation timeout time of the above-mentioned users to be processed is adjusted at least according to the above-mentioned operation timeout mapping relationship and the above-mentioned geographical location, thereby further improving the flexibility of adjusting the size of the release window, making the resource allocation of the banking system more reasonable, and thus solving the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes.

[0122] 2) The current limiting device of the banking system of the present application adjusts the upper limit of the user capacity of the release window according to the historical business processing time and current business processing needs of the users to be processed, thereby improving the flexibility of adjusting the size of the release window, and can dynamically adjust the size of the release window according to actual business needs and user attributes, and adjust the operation timeout time of the above-mentioned users to be processed at least according to the above-mentioned operation timeout mapping relationship and the above-mentioned geographical location, thereby further improving the flexibility of adjusting the size of the release window, making the resource allocation of the banking system more reasonable, and thus solving the problem that the existing technology lacks flexibility in adjusting the size of the release window and cannot be dynamically adjusted according to actual business needs and user attributes.

[0123] The above description is merely a preferred embodiment of the present application and is not intended to limit the present application. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present application shall be included within the scope of protection of the present application.

Claims

1. A current limiting method for a banking system, characterized in that: include: Constructing an operation timeout mapping relationship and storing each pending user information in a waiting queue, wherein the operation timeout mapping relationship at least includes a mapping relationship between a geographic location and an operation timeout period; Adjust the upper limit of the user capacity of the release window based on the historical service processing time and current service processing needs of the users to be processed. The release window is used to store users who are currently processing services. When the user to be processed is handling business, the operation timeout of the user to be processed is adjusted at least according to the operation timeout mapping relationship and the geographical location. The operation timeout represents the length of time allowed for the user to be processed to operate the current step.

2. The method according to claim 1, characterized in that Adjust the upper limit of the user capacity of the release window based on the historical service processing time and current service needs of the users to be processed, including: Using a machine learning model to process the historical service processing time of the user to be processed and the current service processing needs; Obtaining the predicted time for the pending user to complete the current business process output by the machine learning model; When the predicted duration is greater than or equal to the duration threshold, lowering the user accommodation upper limit of the release window; When the predicted duration is less than the duration threshold, the user accommodation upper limit of the release window is increased.

3. The method according to claim 1, characterized in that The operation timeout mapping relationship also includes a mapping relationship between the geographic location, the equity level, and the operation timeout period, wherein the equity level is a value determined based on the historical consumption amount, activity level, and reputation performance of the user to be processed; Adjusting the operation timeout of the to-be-processed user at least according to the operation timeout mapping relationship and the geographical location includes: The operation timeout of the user to be processed is adjusted according to the operation timeout mapping relationship, the geographical location, and the rights level of the user to be processed.

4. The method according to claim 1, wherein Adjusting the operation timeout of the pending user includes: When it is determined that the operation timeout needs to be increased, the operation timeout of the current operation is adjusted to the sum of the remaining value of the operation timeout of the current operation and the operation timeout of the next operation, or the operation timeout of the current operation is adjusted to the sum of the operation timeouts of two adjacent operations.

5. The method according to claim 1, wherein After storing each to-be-processed user information in the waiting queue, the method further includes: Within the anti-shake setting time, if the request for the same business processing type from the same pending user is received at least a preset number of times, the pending user information will be stored in the target type list, and the target type list is used to store the pending user information that does not require business processing.

6. The method according to claim 1, wherein The process of adjusting the upper limit of user capacity of the release window includes: When the user information to be processed is within the release window, executing the current required processing service of the user information to be processed; If the pending user information is not within the release window, the waiting queue is empty, and the release window is empty or not full, the pending user information is stored in the release window, and the current required processing service of the pending user information is executed; When the user information to be processed is not within the release window, the waiting queue is empty, and the release window is full, keep the user information to be processed stored in the waiting queue; When the to-be-processed user information is not within the release window and the waiting queue is neither full nor empty, generating first prompt information in a visual manner to prompt the current length of the waiting queue; When the to-be-processed user information is not within the release window and the waiting queue is full, a second prompt message is generated in a visual manner to prompt that the waiting queue is full.

7. The method according to any one of claims 1 to 6, characterized in that In the process of adjusting the user capacity upper limit of the release window, the method further includes: determining parameters and programs corresponding to the current business demand, obtaining target parameters and target programs; starting the target programs and configuring the target parameters to build a business scenario; calling a gateway service to read the business scenario in a configuration service; calling a flow control scheduling service to clear the pending user information of the pending users whose requests have timed out; After adjusting the operation timeout period of the pending user, the method further includes: after completing the current demand processing business, calling the flow limiting management consumption service to determine the message notification related to the pending user from the message queue to clear the pending user information in the release window.

8. A current limiting device for a banking system, characterized in that: include: A first processing unit is configured to construct an operation timeout mapping relationship and store each to-be-processed user information in a waiting queue, wherein the operation timeout mapping relationship at least includes a mapping relationship between a geographic location and an operation timeout period; The second processing unit is configured to adjust the upper limit of the user capacity of the release window according to the historical service processing time and current service processing demand of the users to be processed, wherein the release window is used to store users who are currently processing services; The third processing unit is used to adjust the operation timeout of the user to be processed when the user to be processed is handling business, and at least based on the operation timeout mapping relationship and the geographical location, where the operation timeout represents the length of time allowed for the user to be processed to operate the current step.

9. A computer-readable storage medium, characterized in that The computer-readable storage medium includes a stored program, wherein when the program is executed, the device where the computer-readable storage medium is located is controlled to execute the method according to any one of claims 1 to 7.

10. A banking system, characterized in that: include: A client, a gateway and a current limiting device, wherein the client communicates with the current limiting device through the gateway, and the current limiting device is used to execute the method according to any one of claims 1 to 7.