An application control method and system

By acquiring server information to filter target servers with stable performance, and by performing fine-grained control based on response time and concurrency, the problem of uneven resource utilization in traditional concurrency balancing strategies is solved, and the system achieves stable operation and rapid response.

CN119690665BActive Publication Date: 2025-11-07GUANGZHOU PENGHAI INFORMATION TECHNOLOGY CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411765576.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-04
Publication Date
2025-11-07
Estimated Expiration
2044-12-04

AI Technical Summary

Technical Problem

In high-concurrency scenarios, traditional concurrency balancing strategies cannot effectively utilize server resources, leading to some servers being overloaded while others are idle, resulting in longer response times. This negatively impacts user experience, especially in fast-response scenarios such as e-commerce flash sales and financial transactions.

Method used

By acquiring server information, we can filter out target servers with stable performance, and then perform fine-grained control based on response time and concurrency, dynamically adjusting resource allocation to ensure stable system operation.

Benefits of technology

Optimize server concurrency, improve system performance and stability, reduce the risk of failure, and ensure a fast-responding user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119690665B_ABST
    Figure CN119690665B_ABST
Patent Text Reader

Abstract

The application belongs to the technical field of computers, and provides an application control method and system, which comprises the following steps: obtaining server information; determining a target server through the server information; obtaining the latest candidate application program through the target server and determining a target application program; generating and sending use information according to the target application program to instruct the target application program to use according to the target use information. According to the application control method of the embodiment of the application, the server can be intelligently selected, the candidate application program can be screened, and the use thereof can be finely controlled in the scene of efficient resource utilization, so that the concurrent condition of the server is optimized, and the smooth running of the system is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of computers, and particularly relates to an application control method and system. BACKGROUND

[0002] Due to the application control method, device, electronic equipment and computer readable storage medium with the patent publication number CN114363461B, the processing capacity of the server is insufficient under high concurrency, leading to frequent occurrence of phenomena such as request accumulation, delayed response, and connection interruption. Although the traditional concurrency balancing strategy can distribute requests to multiple servers to balance the concurrency pressure, the effect is not ideal when facing complex and variable scenarios.

[0003] Traditional concurrency balancing algorithms such as polling and minimum connection number may not fully consider the actual performance differences of servers and the current concurrency situation, leading to overload of some servers and idle state of other servers. In addition, manual adjustment of server resources during peak periods also causes a certain degree of delay and instability. Moreover, when the number of concurrent requests of a server increases significantly, especially exceeding the number of requests that the server can handle at the same time, the system first faces the accumulation of requests. When multiple requests are queued in the processing queue of the server side, the response time will increase significantly, resulting in a huge delay. This delay often manifests as the client being unable to quickly obtain feedback, resulting in poor user experience, especially in application scenarios that require fast response (such as e-commerce rush purchase, financial transactions, etc.), which is particularly serious. SUMMARY

[0004] The present application aims to at least partially solve one of the technical problems in the related art. To this end, the first object of the present application is to propose an application control method that can intelligently select servers, filter candidate applications, and finely control their use in scenarios with efficient resource utilization, thereby optimizing server concurrency and ensuring smooth operation of the system.

[0005] The second object of the present application is to propose an application control system.

[0006] To achieve the above-mentioned objects, the first aspect of the present application proposes an application control method, which comprises the following steps:

[0007] S100, obtaining server information;

[0008] S200, determining a target server through the server information;

[0009] S300, obtaining the latest candidate application program through the target server and determining a target application program;

[0010] S400, generating and sending usage information according to the target application program, to instruct the target application program to use according to the target usage information.

[0011] According to the application control method, the server can be intelligently selected, the candidate application program can be screened, and the use thereof can be finely controlled in the scene of efficient resource utilization, so that the server concurrent condition is optimized, and the smooth running of the system is ensured.

[0012] Further, the server information obtained in step S100 includes:

[0013] The matched server is screened through the request information of the user, and the matched server information is further obtained; wherein the server information includes the response timeliness of the server, the request number of the server, and the concurrent user number of the server.

[0014] The request information includes the request type of the user (such as e-commerce rush purchase, financial transaction, data query, etc.), the load type of the request (for example, the size of the request, whether it is a high-concurrency request), and the timeliness requirement of the request (for example, whether real-time response is required, whether a certain delay is allowed).

[0015] The method for screening the matched server through the request information of the user includes: screening the server according to the request type, for example, for a high-concurrency e-commerce rush purchase request, a server with high-concurrency processing capability is screened out.

[0016] Preferably, the server capable of processing the request load of the user is selected, if the request amount is large and the concurrency number is high, the server with a load processing capability higher than the average standard in the same time period among all servers is selected;

[0017] Preferably, for a request requiring strict response time, such as financial transaction, a server with a response time less than the average response time of all servers is screened out to ensure that the request can be processed within the predetermined time.

[0018] When the concurrent request amount surges, especially exceeds the number of requests that can be processed by the server at the same time, the first situation the system faces is the accumulation of requests. When multiple requests are queued in the processing queue of the server end, the response time is obviously increased. This delay often manifests as the client being unable to quickly obtain feedback, and the user experience is poor, especially in application scenarios requiring fast response (such as e-commerce rush purchase, financial transaction, etc.), the influence is particularly serious. In order to solve this problem, the current server concurrency condition needs to be monitored, and the target server that can provide timely feedback is screened out.

[0019] Further, the target server is determined by the server information in step S200, comprising: S201, when the matched servers are filtered by the request information of the user, the response time sequence of each matched server is obtained by the response time of the server after receiving the user request in the last one hour;

[0020] The method for calculating the time-sensitive load response time by the response time of the server after receiving the user request in the last one hour is: all matched servers are obtained and P(j) is used to represent the jth server, wherein j represents the identification of each matched server, j=1, 2, …, K, K represents the number of matched servers; the response time of the matched server after receiving the user request in the last one hour is obtained, and Pt(j, i) is used to represent the response time of the jth matched server after receiving the user request in the last one hour, wherein i represents the identification of the response time, i=1, 2, …, G, G represents the number of response times of the jth matched server after receiving the user request in the last one hour; the average value of all response times of the jth server after receiving the user request in the last one hour is Pav(j), an empty sequence is created and is recorded as the response time sequence TO, all Pav(j) are imported into the response time sequence, and the average value in the response time sequence is recorded as MO; the total number of user requests received in the last one hour of the matched server is obtained and is recorded as n(j), and the maximum number of concurrent users of the matched server in the last one hour is b(j);

[0021] S202, by calculating the variance of the response time sequence TO, the response time is divided into the first server response time range Tok1, the second server response time range Tok2, and the third server response time range Tok3;

[0022] Specifically, the value of the average response time MO minus the value of the variance is recorded as MG, and the value of the average response time MO plus the value of the variance is recorded as MP. The first server response time range Tok1 includes all response times less than or equal to MG. The second server response time range Tok2 includes all response times greater than MG and less than MP. The third server response time range Tok3 includes all response times greater than or equal to MP.

[0023] The beneficial effect of this step is that: due to the high concurrency of request volume may cause the request processing time exceeds the preset timeout, the connection between the client and the server may be interrupted, or the response of the request is timed out, resulting in request failure, the client will receive timeout error or failure prompt, affecting the normal user operation. For example, some requests may be rejected by the server due to queuing for too long, returning a 503 service unavailable error; therefore, the time-to-live response time is calculated according to the response time of the server after receiving the user request in the last 1 hour, and the average response time of each matching server is calculated and imported into the response time sequence, so that the working state and performance of each server can be understood, and the target server with relatively stable and good performance can be selected according to the actual data, thereby improving the overall performance and stability of the system; since the variance value reflects the degree of numerical deviation from the average value in the data set, and then reflects whether the system concurrency is fluctuating, by calculating the variance of the response time sequence and dividing it into different ranges, the change and stability of the response time can be evaluated; according to the classification management of different response time ranges, it is helpful to predict possible problems and adjust the target server selection in time to ensure service quality and stability, according to the total number of user requests and the maximum number of concurrent users received by the matching server in the last 1 hour, combined with the total request response time boundary and the concurrent response time boundary calculated. This comprehensive consideration can help the system to use resources more effectively, and avoid the situation of some servers being overloaded or wasting resources, and by carefully evaluating the server status, predicting potential risks and taking corresponding measures to avoid service failure;

[0024] S203, calculate the total request response time boundary KP1 and the concurrent response time boundary KP2 through the first server response time range Tok1, the second server response time range Tok2 and the third server response time range Tok3;

[0025] The time range of the value of the first server response time range Tok1, the second server response time range Tok2 and the third server response time range Tok3 is respectively denoted as [S, SL], [L, LK] and [ML, MX], wherein [S, SL] represents the first server response time range Tok1, wherein S is the minimum value of the response time sequence TO, and SL is the value closest to MG among all response times less than or equal to MG. [L, LK] represents the second server response time range Tok2, wherein L is the value closest to MG among all response times greater than MG, and LK is the value closest to MP among all response times less than MP. [ML, MX] represents the third server response time range Tok3, wherein ML is the value closest to MP among all response times greater than or equal to MP, and MX is the maximum value of the response time sequence TO.

[0026] Create an empty sequence and mark it as the total request sequence EN; create an empty sequence and mark it as the concurrency sequence BN; import all n(j) into the total request sequence EN, and mark the average value in the total request sequence EN as EM and the variance as EK; import all b(j) into the total request sequence BN, and mark the average value in the total request sequence BN as BM and the variance as BK, and mark the maximum value of b(j) in the total request sequence BN as MaxB;

[0027] Further, the method for calculating the total request response time boundary KP1 and the concurrency response time boundary KP2 comprises: wherein the total request response time boundary KP1 is equal to (SL+L) / 2-N×(EM-EK) / (EM+EK); and the concurrency response time boundary KP2 is equal to (MX-S)-[(SL+L) / 2]×(BM-BK) / MaxB; wherein SL and L respectively represent the maximum value of the first server response time range and the minimum value of the second server response time range, N is the minimum value of the first server response time range, EM is the average value in the total request sequence EN, EK is the variance in the total request sequence EN, MX is the maximum value of the third server response time range, BM is the average value in the concurrency sequence BN, BK is the variance in the concurrency sequence BN, and MaxB is the maximum value of b(j) in the concurrency sequence BN.

[0028] Specifically, the total request response time boundary KP1 calculation method: through (SL+L) / 2, the reasonable response time limit of the server when processing requests is calculated, then the average value EM and the variance EK in the total request sequence EN are calculated and brought into the formula, and through the calculation of the difference between the average value and the variance, the influence degree of the total request on the server response time can be measured. Through the above two parts, the total request response time boundary KP1 is obtained, which is used to evaluate the stability and performance of the system under different loads, so that the target server suitable for the current load situation can be better selected to undertake tasks.

[0029] Specifically, the response time boundary KP2 calculation method: first, the difference between the maximum value MX of the third server response time range and the minimum value S of the second server response time range is calculated, which is the relative response time of the server under the additional delay in the high load situation, then the average value of the maximum value SL and the minimum value L of the first server response time range is multiplied by the influence factor MaxB of the concurrency after being weighted by the correlation between the average value BM and the variance BK in the concurrency sequence BN, which can calculate the reasonable response time boundary of the concurrency on the processing capacity of different servers under the influence of high load.

[0030] S204, compare the size of the total request response time boundary KP1 and the concurrent response time boundary KP2, when KP1 is less than KP2, the server corresponding to Pav(j) with the minimum absolute value subtracted from KP1 in the response time sequence TO is the target server; when KP2 is less than KP1, the server corresponding to Pav(j) with the minimum absolute value subtracted from KP2 in the response time sequence TO is recorded as the target server.

[0031] Specifically, the total request response time boundary KP1 and the concurrent response time boundary KP2 are important indicators for the system to select the target server. They provide the basis for optimizing target server selection, dynamically scheduling resources, improving system stability, and reducing fault risk by comprehensively calculating the performance parameters and concurrency of each server. The calculation principle of KP1 and KP2 is based on the analysis of parameters such as response time range, request total sequence average and variance, and concurrent quantity sequence average and variance. The estimated total request response time boundary and concurrent response ability boundary are obtained. Through the total request response time boundary KP1 and the concurrent response time boundary KP2, the target server that is most suitable for undertaking tasks under the current concurrency condition can be intelligently selected, avoiding the decline of service quality due to excessive concurrency or unstable performance. At the same time, according to KP1 and KP2, the resource allocation strategy is dynamically adjusted to keep the system running in a stable state, which can further reduce the risk of failure and ensure the normal operation of the system.

[0032] The beneficial effects of this step are: through the calculation method in steps S203 and S204, the system can optimize target server selection, intelligently schedule resources, and improve system stability and reduce fault risk. First, by calculating the total request response time boundary KP1 and the concurrent response time boundary KP2, the system can more accurately evaluate the performance and concurrency of each server, thereby avoiding sending requests to servers with excessive concurrency or unstable performance, and improving the performance of the entire system. Second, based on the analysis of the request total sequence and the concurrent quantity sequence, the resource allocation strategy can be dynamically adjusted to meet the needs under different concurrency, keeping the system running in a reasonable state. In addition, selecting the target server according to the size comparison of the total request response time boundary and the concurrent response time boundary helps to control the system stability and avoid the decline of service quality due to excessive concurrency of some nodes.

[0033] In step S300, the target server obtains the latest candidate application program, and determines the target application program;

[0034] Specifically, the system acquires the latest candidate application program by connecting to the target server, and determines the final target application program; first, the system establishes a connection with the target server, and requests to acquire the list of currently available application programs on the server; then, the system filters the acquired application program list, and determines the candidate application program according to the user preference; then, the system checks whether the candidate application program is the latest version, and can select to update to the latest version; finally, after filtering and updating, the final target application program is determined to ensure that the user always uses the application software that meets the requirements and is the latest version.

[0035] Further, in the e-commerce rush purchase activity, the process of step S300 can be used to acquire and select the most suitable goods for the system to ensure that the user can purchase the goods that meet the requirements, and the goods information is the latest and updated. The specific steps are as follows: establishing a connection with the target server to acquire the goods list; before the e-commerce rush purchase activity starts, the system first establishes a connection with the server of the e-commerce platform, and requests to acquire the list of goods available for rush purchase on the current platform. The list can include information such as the name of the goods, the inventory, the price, and the sales; the server returns a goods list containing the information of all the goods that will participate in the rush purchase, and their detailed information (such as the price, the remaining inventory, etc.). The list is customized based on the activity rules and the user preference; filtering the candidate goods and recommending according to the user demand; the system will filter the goods that meet the requirements according to the user's personal preference (such as the brand, the price range, the favorite type, etc.). For example, if the user prefers a certain brand or a specific function of the goods, the system will filter the candidate goods from the goods list according to these information; the system displays the filtered goods to the user for selection. These goods are usually the most interesting and most suitable for the user. Then, the system checks the status of each candidate goods to confirm whether it is the latest version. For example, whether the goods have new discounts, promotion activities or inventory updates. If the price of a certain goods changes or the inventory is adjusted, the system will update accordingly; if it is found that the goods information (such as the price, the inventory, the promotion, etc.) has been updated, the system will automatically update the goods data to ensure that the latest goods information is displayed to the user; after filtering and updating, the system finally determines the target goods of the user. The goods meet the user's requirements and are the latest version, and still have inventory in the activity; finally, the user can click the target goods to add them to the shopping cart and participate in the rush purchase. After the system confirms that the goods can be successfully purchased, the user successfully completes the rush purchase operation.

[0036] S400, generating and sending usage information according to the target application program, to instruct the target application program to use according to the target usage information.

[0037] Further, after determining the target application, the control end generates a usage information, which includes but is not limited to: usage duration: specifies the time required for the target application to run; traffic consumption: specifies the network traffic allowed to be consumed by the target application during use; usage frequency: specifies the number of times the application needs to be started within a certain time period; resource consumption limit: includes the usage amount of CPU or memory, to ensure that the target application does not exceed certain resource limits during use; and sending usage information: after generating the usage information, the control end sends these information to the device of the controlled end, to ensure that the target application runs in the specified manner. These information are transmitted to the target device through a network protocol, to ensure timely and accurate execution.

[0038] Among them, the control end refers to a device or system responsible for managing, monitoring and operating other devices (controlled end), for real-time monitoring and management of multiple controlled end devices. The functions of the control end include requesting data from the controlled end, filtering and sorting these data, and performing corresponding management operations according to the needs. For example, the control end can send a request to the controlled end to obtain the latest application usage data, process the data and display the candidate application.

[0039] The controlled end refers to a device or system that is controlled and monitored, which includes the devices of end users, such as smartphones, computers or other networked devices, running various applications and generating usage data. The controlled end can periodically upload information about the applications it uses (such as application name, usage duration, traffic consumption, etc.) for the control end to obtain and process;

[0040] Further, the controlled end is managed and monitored by the control end through management software.

[0041] Further, after receiving the usage information of the target application, the controlled end performs actual application management according to the parameters provided by the control end (such as usage duration, traffic, etc.), and the controlled end device executes the target application to ensure that the application runs under the premise of meeting the predetermined usage information.

[0042] Further, the control end monitors the status of the application during its running, and adjusts the usage information as needed. If it is found that the resource consumption of the application is too large or exceeds the target usage range, the control end can issue new adjustment instructions to limit or stop the running of the application.

[0043] The beneficial effects of the present application are: for complex systems that need to manage multiple devices and applications, especially in scenarios that require efficient resource utilization, the application selects servers intelligently, filters candidate applications, and fine-tunes the use of them, thereby optimizing server concurrency and ensuring smooth operation of the system.

[0044] To achieve the above object, the second aspect of the present application further provides an application control system, comprising a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the application control method when executing the computer program, and the application control system is applied to a computing device of a desktop computer, a notebook computer, a palm computer, or a cloud data center.

[0045] By applying the application control method to the application control system, the server can be intelligently selected, the candidate application program can be screened, and the use thereof can be finely controlled in the efficient resource utilization scenario, so that the server concurrency is optimized, and the smooth running of the system is ensured. BRIEF DESCRIPTION OF DRAWINGS

[0046] Figure 1 A flowchart of an application control method is shown.

[0047] Figure 2 A structural diagram of an application control system is shown. DETAILED DESCRIPTION

[0048] The embodiments of the present application are described in detail below, and examples of the embodiments are shown in the drawings, wherein the same or similar reference signs represent the same or similar elements or elements having the same or similar functions throughout. The embodiments described below by referring to the drawings are exemplary and are intended to explain the present application, and cannot be understood as a limitation of the present application.

[0049] Figure 1 A flowchart of an application control method is shown.

[0050] Referring to Figure 1 , the present application provides an application control method, comprising the following steps:

[0051] S100, obtaining server information;

[0052] S200, determining a target server according to the server information;

[0053] S300, obtaining the latest candidate application program through the target server, and determining a target application program;

[0054] S400, generating and sending use information according to the target application program, so as to instruct the target application program to use according to the target use information.

[0055] According to the application control method of the embodiments of the present application, the server can be intelligently selected, the candidate application program can be screened, and the use thereof can be finely controlled in the efficient resource utilization scenario, so that the server concurrency is optimized, and the smooth running of the system is ensured.

[0056] Further, the server information obtained in step S100 includes:

[0057] The matched server is filtered through the request information of the user, and the matched server information is further obtained; wherein the server information includes response timeliness of the server, request number of the server, and concurrent user number of the server.

[0058] When the concurrent request quantity surges, especially exceeds the number of requests that can be processed by the server at the same time, the first situation the system faces is the accumulation of requests. When multiple requests are queued in the processing queue of the server side, the response time is obviously increased. This delay often manifests that the client cannot quickly obtain feedback, and the user experience is poor, especially in application scenarios that require fast response (such as e-commerce rush purchase, financial transaction, etc.), the influence is particularly serious. In order to solve this problem, the current server concurrency needs to be monitored, and the target server that can provide timely feedback is screened out.

[0059] Further, the target server is determined through the server information in step S200, including: S201, after the matched server is filtered through the request information of the user, the response time sequence of each matched server is obtained through the response time of the server after receiving the user request in the last 1 hour;

[0060] The method for calculating the timeliness load response time through the response time of the server after receiving the user request in the last 1 hour is: all matched servers are obtained and the P(j) is used to represent the jth server, wherein j represents the identification of each matched server, j=1, 2, …, K, K represents the number of matched servers; the response time of each matched server after receiving the user request in the last 1 hour is obtained, and the Pt(j, i) is used to represent the response time of the jth matched server after receiving the user request in the last 1 hour, wherein i represents the identification of the response time, i=1, 2, …, G, G represents the number of response times of the jth matched server after receiving the user request in the last 1 hour; the average value of all response times of the jth server after receiving the user request in the last 1 hour is Pav(j), an empty sequence is created and is recorded as a response time sequence TO, all Pav(j) are imported into the response time sequence, and the average value in the response time sequence is recorded as MO; the total number of requests received by the matched server in the last 1 hour is recorded as n(j), and the maximum concurrent user number of the matched server in the last 1 hour is b(j).

[0061] S202, the response time is divided into a first server response time range Tok1, a second server response time range Tok2, and a third server response time range Tok3 by calculating the variance of the response time sequence TO.

[0062] Specifically, the value of the average response time MO minus the value of the variance is MG, and the value of the average response time MO plus the value of the variance is MP. The first server response time range Tok1 includes all response times less than or equal to MG. The second server response time range Tok2 includes all response times greater than the value of MG and less than the value of MP. The third server response time range Tok3 includes all response times greater than or equal to MP.

[0063] The beneficial effect of this step is that because a large number of concurrent requests can cause the request processing time to exceed the preset timeout, the connection between the client and the server can be interrupted, or the response of the request times out, causing the request to fail, and the client receives a timeout error or a failure prompt, affecting normal user operation. For example, some requests can be rejected by the server due to long queuing, returning a 503 service unavailable error; therefore, the timeliness load response time is calculated according to the response time of the server after receiving the user request in the last one hour, and the average response time of each matching server is calculated and imported into the response time sequence, so that the working state and performance of each server can be understood, and a relatively stable and good target server can be selected according to the actual data, thereby improving the overall performance and stability of the system; because the variance value reflects the degree of deviation of the data set from the average value, and further reflects whether the system concurrency is fluctuating, by calculating the variance of the response time sequence and dividing it into different ranges, the change and stability of the response time can be evaluated; according to the classification management of different response time ranges, it is helpful to predict possible problems and adjust the target server selection in time to ensure the service quality and stability, according to the total number of user requests and the maximum number of concurrent users received by the matching server in the last one hour, combined with the total request response time boundary and the concurrent response time boundary calculated. This comprehensive consideration can help the system to use resources more effectively, and avoid the situation of overload or resource waste of some servers, and by carefully evaluating the server status, predicting potential risks and taking corresponding measures to avoid service failure;

[0064] S203, calculate the total request response time boundary KP1 and the concurrent response time boundary KP2 through the first server response time range Tok1, the second server response time range Tok2, and the third server response time range Tok3;

[0065] The time range of the first server response time range Tok1, the second server response time range Tok2, and the third server response time range Tok3 is respectively denoted as [S, SL], [L, LK], and [ML, MX], wherein the interval [S, SL] represents the first server response time range Tok1, S is the minimum value of the response time sequence TO, and SL is the value closest to MG among all response times less than or equal to MG. The interval [L, LK] represents the second server response time range Tok2, L is the value closest to MG among all response times greater than MG, and LK is the value closest to MP among all response times less than MP. The interval [ML, MX] represents the third server response time range Tok3, ML is the value closest to MP among all response times greater than or equal to MP, and MX is the maximum value of the response time sequence TO.

[0066] An empty sequence is created and denoted as a request total sequence EN, and an empty sequence is created and denoted as a concurrency sequence BN. All n(j) are introduced into the request total sequence EN, and the average value in the request total sequence EN is denoted as EM, and the variance is denoted as EK. All b(j) are introduced into the request total sequence BN, and the average value in the request total sequence BN is denoted as BM, and the variance is denoted as BK. The maximum value of b(j) is denoted as MaxB.

[0067] Further, the method for calculating the total request response time boundary KP1 and the concurrency response time boundary KP2 comprises: wherein the total request response time boundary KP1 is equal to (SL+L) / 2-N×(EM-EK) / (EM+EK); and the concurrency response time boundary KP2 is equal to (MX-S)-[(SL+L) / 2]×(BM-BK) / MaxB; wherein SL and L represent the maximum value of the first server response time range and the minimum value of the second server response time range, respectively, N is the minimum value of the first server response time range, EM is the average value in the request total sequence EN, EK is the variance in the request total sequence EN, MX is the maximum value of the third server response time range, BM is the average value in the concurrency sequence BN, BK is the variance in the concurrency sequence BN, and MaxB is the maximum value of b(j) in the concurrency sequence BN.

[0068] S204, the size of the total request response time boundary KP1 and the concurrency response time boundary KP2 is compared, when KP1 is less than KP2, the server corresponding to Pav(j) with the minimum absolute value subtracted from KP1 in the response time sequence TO is taken as the target server; when KP2 is less than KP1, the server corresponding to Pav(j) with the minimum absolute value subtracted from KP2 in the response time sequence TO is taken as the target server.

[0069] Specifically, the total request response time boundary KP1 and the concurrent response time boundary KP2 are important indicators for the system when selecting a target server. They provide the basis for optimizing target server selection, dynamically scheduling resources, improving system stability, and reducing failure risk by comprehensively calculating the performance parameters and concurrency of each server. The calculation principle of KP1 and KP2 is based on the analysis of parameters such as response time range, average and variance of request total sequence, and average and variance of concurrency sequence. The estimated total request response time boundary and concurrent response capability boundary are obtained. Through the total request response time boundary KP1 and the concurrent response time boundary KP2, the target server that is most suitable for undertaking tasks under the current concurrency situation can be intelligently selected, avoiding the decline of service quality due to excessive concurrency or unstable performance. At the same time, according to KP1 and KP2, the resource allocation strategy is dynamically adjusted to keep the system running in a stable state, which can further reduce the risk of failure and ensure normal operation of the system.

[0070] The beneficial effects of this step are: through the calculation method in steps S203 and S204, the system can optimize target server selection, intelligently schedule resources, and improve system stability and reduce failure risk. First, by calculating the total request response time boundary KP1 and the concurrent response time boundary KP2, the system can more accurately evaluate the performance and concurrency of each server, thereby avoiding sending requests to servers with excessive concurrency or unstable performance, and improving the performance of the entire system. Second, based on the analysis of the request total sequence and the concurrency sequence, the resource allocation strategy can be dynamically adjusted to meet the needs under different concurrency, keeping the system running in a reasonable state. In addition, selecting the target server according to the size comparison of the total request response time boundary and the concurrent response time boundary helps to control the system stability and avoid the decline of service quality due to excessive concurrency of some nodes.

[0071] In step S300, the latest candidate application program is obtained through the target server, and the target application program is determined;

[0072] Specifically, the system obtains the latest candidate application program by connecting to the target server, and determines the final target application program. First, the system establishes a connection with the target server and requests to obtain the list of currently available application programs on the server. Then, the system filters the obtained application program list and determines the candidate application program according to user preferences. Next, the system checks whether the candidate application program is the latest version and can choose to update to the latest version. Finally, after filtering and updating, the final target application program is determined to ensure that the user always uses the application software that meets the demand and is the latest version.

[0073] S400, generating and sending usage information according to the target application program, to instruct the target application program to use according to the target usage information.

[0074] Further, after determining the target application program, the control end generates a usage information, which includes but is not limited to: usage time: specifies the time required for the target application program to run; traffic consumption: specifies the network traffic allowed to be consumed by the target application program during use; usage frequency: specifies the number of times the application program needs to be started within a certain time period; resource consumption limit: includes the amount of CPU or memory used to ensure that the target application program does not exceed certain resource limits during use; and sending usage information: after generating the usage information, the control end sends these information to the device of the controlled end to ensure that the target application program runs according to the specified manner. These information is transmitted to the target device through a network protocol to ensure timely and accurate execution.

[0075] Among them, the control end refers to a device or system responsible for managing, monitoring and operating other devices (controlled end), used for real-time monitoring and management of multiple controlled end devices. The functions of the control end include requesting data from the controlled end, filtering and sorting these data, and performing corresponding management operations according to the needs. For example, the control end can send a request to the controlled end to obtain the latest application usage data, process the data and display the candidate application program.

[0076] The controlled end refers to a device or system that is controlled and monitored, which includes the devices of end users, such as smartphones, computers or other networked devices, running various application programs and generating usage data. The controlled end can periodically upload information about the application programs it uses (such as application name, usage time, traffic consumption, etc.) for the control end to obtain and process;

[0077] Further, the controlled end is managed and monitored by the control end through management software.

[0078] Further, after receiving the usage information of the target application program, the controlled end performs actual application management according to the parameters provided by the control end (such as usage time, traffic, etc.), and the controlled end device will execute the target application program to ensure that the application runs under the premise of meeting the predetermined usage information.

[0079] Further, the control end monitors the status of the application program in real time during its running, and adjusts the usage information as needed. If it is found that the resource consumption of the application program is too large or exceeds the target usage range, the control end can issue new adjustment instructions to limit or stop the running of the application program.

[0080] The application has the advantages that for a complex system that needs to manage multiple devices and applications, especially in a scenario that needs to optimize server concurrency and ensure smooth operation of the system by intelligently selecting servers, filtering candidate applications, and finely controlling their use.

[0081] The method is applied to an e-commerce rush purchase implementation as follows:

[0082] Before the start of an e-commerce rush purchase activity, the system will intelligently select target servers based on real-time monitoring of server concurrency and performance indicators, and pre-load required resources to ensure that the system is in an optimal state on standby. By preparing in advance and optimizing server configuration, the system can handle sudden user request volumes and maintain stable service response times during peak periods.

[0083] Once the rush purchase activity starts, the system will intelligently schedule resource allocation strategies based on real-time monitoring of server concurrency and user access behavior. By distributing requests to target servers with stable performance and moderate concurrency, it avoids overloading certain nodes and causing service failures or delays. This intelligent scheduling mechanism can effectively improve the overall performance of the system and ensure that users can still smoothly perform shopping operations during peak periods.

[0084] The control end will monitor user access behavior in real time and adjust usage information as needed to manage user operations. For example, when detecting that a user frequently refreshes pages or consumes a large amount of bandwidth, the control end can limit their access frequency or traffic consumption to avoid affecting other users and ensure the stability and performance of the overall system.

[0085] When the rush purchase activity ends, the system will automatically release excess resources and conduct in-depth analysis and summary of the activity based on historical data. By comprehensively evaluating data such as participants, product popularity, and transaction success rate, the system can provide more accurate references for future similar activities, further optimize operation strategies and resource allocation schemes, and improve the competitiveness and user experience of e-commerce platforms.

[0086] Figure 2 The application control system structure diagram is shown.

[0087] Referring to Figure 2 The application also proposes an application control system 20, which includes a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of an application control method. The application control system 20 runs in computing devices such as desktop computers, laptops, palmtop computers, and cloud data centers.

[0088] The application control system comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor executes the computer program to run in the following units of the application control system:

[0089] The acquisition unit 21 is configured to acquire server information.

[0090] The determination unit 22 is configured to determine a target server based on the server information.

[0091] The acquisition unit 23 is configured to acquire the latest candidate application program from the target server and determine a target application program.

[0092] The management unit 24 is configured to generate and send usage information based on the target application program, so as to instruct the target application program to be used according to the target usage information.

[0093] The application control system can be run in a desktop computer, a notebook computer, a palm computer, a cloud server, and other computing devices. The application control system can comprise, but is not limited to, a processor and a memory. Those skilled in the art can understand that the example is only an example of the application control system 20, and does not constitute a limitation on the application control system 20, and can comprise more or fewer components, or combine certain components, or different components, for example, the application control system can also comprise an input / output device, a network access device, a bus, and the like.

[0094] By executing the application control method by the application control system 20, the server can be intelligently selected, the candidate application program can be screened, and the use thereof can be finely controlled in the scene of efficient resource utilization, so as to optimize the server concurrent situation and ensure the smooth running of the system.

[0095] It is to be appreciated that the above description and the examples that follow are intended to be illustrative only and that changes can be made to the description and examples without departing from the scope of the application. Note also that the use of particular brand names in the description is solely for illustration and should not be construed as an endorsement of such brands.

[0096] It should be understood that aspects of the application can be implemented in hardware, software, firmware or a combination thereof. In the above embodiments, various steps or methods can be implemented in software or firmware that is stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any of the following techniques, which are well known in the art of hardware implementation, can be used: a hybrid of the above techniques, a mixture of two or more of the above techniques, or a combination of the above techniques with other techniques not listed above.

[0097] In the description of the present application, the terms "one embodiment", "some embodiments", "an example", "a specific example", or "some examples" are intended to mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present application. The illustrative appearances of the above-mentioned terms in various places in the specification are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0098] In the description of the present application, it needs to be understood that the terms "center", "longitudinal", "transverse", "length", "width", "thickness", "upper", "lower", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer", "clockwise", "counterclockwise", "axial", "radial", "circumferential" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, which are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the devices or elements referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as limiting the present application.

[0099] In addition, the terms "first", "second", and the like used in the embodiments of the present application are only for the purpose of description, and cannot be understood as indicating or implying relative importance, or implicitly indicating the number of technical features referred to in the embodiments. Therefore, the features defined with "first", "second" and the like in the embodiments of the present application can be explicitly or implicitly indicated to include at least one of the features. In the description of the present application, the meaning of the word "plurality" is at least two or two or more, such as two, three, four, etc., unless otherwise specifically limited in the embodiments.

[0100] In the present application, unless otherwise specifically provided or limited in the embodiments, the terms "mounting", "connecting", "connecting" and "fixing" and the like appearing in the embodiments should be understood broadly, for example, the connection can be fixed connection, or detachable connection, or integral, which can be understood, or can be mechanical connection, electrical connection, etc. Of course, it can also be directly connected, or indirectly connected through an intermediate medium, or the internal communication of two elements, or the interaction relationship between two elements. For those skilled in the art, the specific meaning of the above terms in the present application can be understood according to the specific implementation situation.

[0101] In the present application, unless otherwise specifically provided and limited, the first feature "on" or "under" the second feature can be that the first and second features are in direct contact, or the first and second features are indirectly in contact through an intermediate medium. Moreover, the first feature "above", "above" and "above" the second feature can be that the first feature is directly above or obliquely above the second feature, or only indicates that the horizontal height of the first feature is higher than that of the second feature. The first feature "below", "below" and "below" the second feature can be that the first feature is directly below or obliquely below the second feature, or only indicates that the horizontal height of the first feature is less than that of the second feature.

[0102] Although the embodiments of the present application have been shown and described above, it is understood that the above-described embodiments are exemplary and are not to be construed as limiting the present application, and that changes, modifications, substitutions and variations can be made by those skilled in the art without departing from the scope of the present application.

Claims

1. An application control method characterized by comprising: The method comprises the following steps: S100, acquiring server information; S200, determining a target server through the server information; wherein step S200 comprises: S201, when matching servers are filtered from a database through user request information, acquiring a response time sequence TO of each matching server through response times of the servers after receiving user requests in the last one hour; wherein S201 comprises: a method for calculating the time load response time through the response times of the servers after receiving user requests in the last one hour is: acquiring all matching servers and using P(j) to represent the jth server, wherein j represents the identification of each matching server, j=1, 2, …, K, and K represents the number of matching servers; acquiring the response times of each matching server after receiving user requests in the last one hour, and using Pt(j, i) to represent the ith response time of the jth matching server after receiving user requests in the last one hour, wherein i represents the identification of the response time, i=1, 2, …, G, and G represents the number of response times of the jth matching server after receiving user requests in the last one hour; and the average value of all response times of the jth server after receiving user requests in the last one hour is Pav(j); S202, dividing the response time into a first server response time range Tok1, a second server response time range Tok2, and a third server response time range Tok3 through calculating the variance of the response time sequence TO; S203, calculating a total request response time boundary KP1 and a concurrent response time boundary KP2 through the first server response time range Tok1, the second server response time range Tok2, and the third server response time range Tok3; wherein step S203 comprises: taking the time ranges of the values of the first server response time range Tok1, the second server response time range Tok2, and the third server response time range Tok3 as [S, SL], [L, LK], and [ML, MX] respectively, wherein [S, SL] represents the first server response time range Tok1, S is the minimum value of the response time sequence TO, and SL is the value closest to MG among all response times less than or equal to MG; [L, LK] represents the second server response time range Tok2, L is the value closest to MG among all response times greater than MG, and LK is the value closest to MP among all response times less than MP; and [ML, MX] represents the third server response time range Tok3, ML is the value closest to MP among all response times greater than or equal to MP, and MX is the maximum value of the response time sequence TO; An empty sequence is created and recorded as the total request sequence EN; an empty sequence is created and recorded as the concurrency sequence BN; all n(j) are introduced into the total request sequence EN, and the average value in the total request sequence EN is recorded as EM, and the variance is recorded as EK; all b(j) are introduced into the total request sequence BN, and the average value in the total request sequence BN is recorded as BM, and the variance is recorded as BK, and the maximum value of b(j) is recorded as MaxB; The method for calculating the total request response time boundary KP1 and the concurrency response time boundary KP2 comprises: wherein the total request response time boundary KP1 is equal to (SL+L) / 2-N×(EM-EK) / (EM+EK); and the concurrency response time boundary KP2 is equal to (MX-S)-[(SL+L) / 2]×(BM-BK) / MaxB; wherein SL and L respectively represent the maximum value of the first server response time range and the minimum value of the second server response time range, N is the minimum value of the first server response time range, EM is the average value in the total request sequence EN, EK is the variance in the total request sequence EN, MX is the maximum value of the third server response time range, BM is the average value in the concurrency sequence BN, BK is the variance in the concurrency sequence BN, and MaxB is the maximum value of b(j) in the concurrency sequence BN; S204, the size of the total request response time boundary KP1 and the concurrency response time boundary KP2 is compared, when KP1 is less than KP2, the server corresponding to Pav(j) with the minimum absolute value subtracted from KP1 in the response time sequence TO is taken as the target server; when KP2 is less than KP1, the server corresponding to Pav(j) with the minimum absolute value subtracted from KP2 in the response time sequence TO is taken as the target server; S300, the latest candidate application program is obtained through the target server, and the target application program is determined; S400, the use information is generated and sent according to the target application program, so as to instruct the target application program to use according to the target use information.

2. The application control method according to claim 1, wherein In step S100, the server information is obtained, comprising: filtering the matched servers from the database through the user's request information, and further obtaining the matched server information; wherein the server information comprises the response time of the server, the request number of the server, and the concurrency user number of the server.

3. The application control method of claim 1, wherein In step S300, the latest candidate application program is obtained through the target server, and the target application program is determined, wherein the method for taking the latest candidate application program is: the system connects the target server to obtain the latest candidate application program, and determines the final target application program; the system establishes a connection with the target server, requests to obtain the application program list currently available on the server; the system filters the obtained application program list, and determines the candidate application program according to the user preference.

4. The application control method of claim 1, wherein At step S400, the usage information is generated and sent according to the target application program, to instruct the target application program to use according to the target usage information, wherein the usage information includes: usage duration: specifying the time required for the target application program to run; traffic consumption: specifying the network traffic allowed to be consumed by the target application program during use; usage frequency: specifying the number of times the application program needs to be started within a certain time period; resource consumption limit: including the usage amount of CPU or memory, to ensure that the target application program does not exceed certain resource limits during use; and sending usage information: after generating the usage information, the control end sends the information to the device of the controlled end, to ensure that the target application program runs according to the specified manner.

5. An application control system characterized by comprising: The application control system comprises a processor, a memory, and a computer program stored in the memory and running on the processor, and the processor implements the steps of the application control method according to any one of claims 1 to 4 when executing the computer program.

Citation Information

Patent Citations

  • Application control methods, devices, electronic devices, and computer-readable storage media

    CN114363461B

  • Application control method and device, electronic equipment and computer readable storage medium

    CN114363461A

  • Application calling method and device, electronic equipment and computer program product

    CN118796315A