Resource allocation method, apparatus, device, and medium

By dynamically adjusting resource allocation strategies and combining resource forecasts, historical usage values, and priority weights, the problems of resource waste and insufficiency under static allocation strategies are resolved, achieving more efficient resource utilization and application performance stability.

CN120407214BActive Publication Date: 2025-10-17INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510920823.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-04
Publication Date
2025-10-17
Estimated Expiration
2045-07-04

AI Technical Summary

Technical Problem

Existing static resource allocation strategies cannot match the dynamic changes in application resource requirements, resulting in resource waste or shortage, affecting system performance and stability.

Method used

By triggering time-periodic tasks, combining the resource forecast value of the current period with the historical resource usage value, introducing priority weights and performance evaluation data, a dynamic feedback regulation loop is formed to dynamically adjust the resource allocation strategy.

Benefits of technology

It improves the accuracy of resource allocation, enhances resource utilization, ensures the stability of application performance, and reduces the risk of service interruption caused by resource waste and shortage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120407214B_ABST
    Figure CN120407214B_ABST
Patent Text Reader

Abstract

The application provides a resource allocation method, device, equipment and medium, which can be applied to the field of computer technology. The method comprises the following steps: in response to a triggered time period task, determining a basic resource allocation value based on a resource prediction value of a target application program in a current period and historical resource usage values of at least one historical period; determining a feedback adjustment value based on a priority weight of the target application program, performance evaluation data in a target historical period, a historical resource prediction value and a target historical resource usage value, the target historical period being a historical period adjacent to the current period; and determining a target resource allocation value of the target application program in the current period based on the feedback adjustment value and the basic resource allocation value.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer, in particular to a resource allocation method, a resource allocation device, an electronic device, a computer readable storage medium and a program product. BACKGROUND

[0002] With the deep integration of big data and cloud computing technology, enterprises have increasing demand for high-performance computing of big data processing. The demand of various application programs for system resources is growing explosively. Under this background, building an efficient resource management and allocation mechanism has become the key to improving resource utilization and avoiding waste.

[0003] Currently, static or fixed resource allocation strategies are usually adopted. Such management mode is difficult to match the dynamic changes of resource demand of application programs, resulting in prominent resource contention problems between application programs: on the one hand, over-allocation of resources leads to idle waste, on the other hand, key application programs have performance bottlenecks due to insufficient resource quota, and in severe cases, even trigger service interruption, which restricts the release of overall system performance. SUMMARY

[0004] In view of the above problems, the present application provides a resource allocation method, a resource allocation device, an electronic device, a computer readable storage medium and a computer program product.

[0005] According to one aspect of the present application, a resource allocation method is provided, comprising: in response to a triggered time period task, determining a basic resource allocation value based on a resource prediction value of a target application program in a current period and a historical resource usage value of at least one historical period; determining a feedback adjustment value based on a priority weight of the target application program and performance evaluation data, a historical resource prediction value and a target historical resource usage value in a target historical period, the target historical period being a historical period adjacent to the current period; determining a target resource allocation value of the target application program in the current period based on the feedback adjustment value and the basic resource allocation value.

[0006] Another aspect of the present application provides a resource allocation device, comprising: a first determining module configured to determine a basic resource allocation value based on a resource prediction value of a target application program in a current period and a historical resource usage value of at least one historical period in response to a triggered time period task; a second determining module configured to determine a feedback adjustment value based on a priority weight of the target application program and performance evaluation data, a historical resource prediction value and a target historical resource usage value in a target historical period, the target historical period being a historical period adjacent to the current period; and a third determining module configured to determine a target resource allocation value of the target application program in the current period based on the feedback adjustment value and the basic resource allocation value.

[0007] Another aspect of the present application provides an electronic device, comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the above-mentioned resource allocation method.

[0008] Another aspect of the present application further provides a computer-readable storage medium having a computer program or instructions stored thereon, which implements the steps of the above-mentioned resource allocation method when the computer program or instructions are executed by a processor.

[0009] Another aspect of the present application further provides a computer program product, including a computer program or instructions, which implements the steps of the above-mentioned resource allocation method when executed by a processor.

[0010] According to the resource allocation method of the present application, the basic resource allocation value is determined by triggering a time period task and integrating the resource prediction value of the current period with the historical resource usage value. At the same time, priority weights, performance evaluation data of the target historical period, and historical prediction errors are introduced as feedback factors to form a dynamic correction of the basic resource allocation value. Because the guarantee of key application resources is ensured by priority weights, and a feedback adjustment loop is formed by performance evaluation data and historical error data to dynamically adjust the basic resource allocation value, this at least partially solves the technical problems of resource waste or resource shortage existing in related technologies, realizes the dynamic adjustment of resource allocation strategies according to the actual operating status, improves the accuracy of resource allocation and resource utilization, and ensures the stability of application performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The above contents and other objects, features and advantages of the present application will become more apparent through the following description of the embodiments of the present application with reference to the accompanying drawings.

[0012] Figure 1 An application scenario diagram of the resource allocation method, apparatus, device, medium, and program product according to an embodiment of the present application is shown.

[0013] Figure 2 A flow chart of a resource allocation method according to an embodiment of the present application is shown.

[0014] Figure 3 A data flow diagram for determining a feedback adjustment value according to an embodiment of the present application is shown.

[0015] Figure 4 A data flow diagram for performing resource configuration according to an embodiment of the present application is shown.

[0016] Figure 5 A structural block diagram of a resource allocation device according to an embodiment of the present application is shown.

[0017] Figure 6 A block diagram of an electronic device suitable for implementing a resource allocation method according to embodiments of the present application is shown. DETAILED DESCRIPTION

[0018] Hereinafter, embodiments of the present application will be described with reference to the accompanying drawings. It should be understood, however, that the description which follows is merely illustrative and is not intended to limit the scope of the present application. In the following detailed description of embodiments of the present application, numerous specific details are set forth in order to provide a thorough understanding of the present application. However, it will be apparent to one skilled in the art that one or more embodiments of the present application can be practiced without these specific details. In other instances, well-known structures and functions have not been described in detail in order to avoid obscuring aspects of the present application.

[0019] The terms used herein are merely used to describe specific embodiments and are not intended to limit the present application. The terms "include", "comprise" and the like used herein indicate the presence of the described features, steps, operations, and / or components but do not preclude the presence or addition of one or more other features, steps, operations, or components.

[0020] All terms used herein, including technical and scientific terms, have the same meanings as those generally understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having meanings consistent with the context of the present specification, and should not be interpreted in an idealized or overly formal manner.

[0021] In the case of using expressions similar to "at least one of A, B, and C, etc.", it should generally be interpreted to include at least one of the items enumerated, but not limited to the items enumerated (e.g., "a system having at least one of A, B, and C" should include a system having A alone, a system having B alone, a system having C alone, a system having A and B together, a system having A and C together, a system having B and C together, and / or a system having A, B, and C together, etc.).

[0022] In the research process, it was found that in the traditional resource management system, the allocation of Central Processing Unit (CPU) resources and memory resources is static or based on fixed rules, and the system cannot dynamically adjust resource allocation according to the actual load of the application program, resulting in a situation of resource waste or resource shortage, and in a multi-tenant or multi-application environment, different application programs will compete for limited CPU resources and memory resources, resulting in some application programs performance degradation due to insufficient resources, and even service interruption.

[0023] Therefore, embodiments of the present application provide a resource allocation method, comprising: in response to a triggered time period task, determining a basic resource allocation value based on a resource prediction value of a target application in a current period and historical resource usage values of at least one historical period; determining a feedback adjustment value based on a priority weight of the target application and performance evaluation data in a target historical period, a historical resource prediction value and a target historical resource usage value, the target historical period being a historical period adjacent to the current period; determining a target resource allocation value of the target application in the current period based on the feedback adjustment value and the basic resource allocation value.

[0024] Figure 1 An application scenario diagram of the resource allocation method, apparatus, device, medium and program product according to embodiments of the present application is shown.

[0025] As shown in Figure 1 application scenario 100 according to this embodiment can include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104 and a server 105. The network 104 is a medium for providing a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103 and the server 105. The network 104 can include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0026] A user can use the first terminal device 101, the second terminal device 102, the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).

[0027] The first terminal device 101, the second terminal device 102, the third terminal device 103 can be various electronic devices with display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers and desktop computers, etc.

[0028] The server 105 can be a server providing various services, such as a background management server supporting a website browsed by a user using the first terminal device 101, the second terminal device 102, the third terminal device 103 (only as an example). The background management server can analyze and process received user requests and other data, and feed back the processing results (such as web pages, information or data generated according to user requests, etc.) to the terminal device.

[0029] It should be noted that the resource allocation method provided by the embodiments of the present application can be generally executed by the server 105. Correspondingly, the resource allocation apparatus provided by the embodiments of the present application can be generally arranged in the server 105. The resource allocation method provided by the embodiments of the present application can also be executed by a server or a server cluster different from the server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Correspondingly, the resource allocation apparatus provided by the embodiments of the present application can also be arranged in a server or a server cluster different from the server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105.

[0030] It should be understood that Figure 1 The number of terminal devices, networks and servers in the above scenario is only illustrative. According to the implementation needs, there can be any number of terminal devices, networks and servers.

[0031] The resource allocation method of the embodiments of the present application will be described in detail below based on the scenario described above. Figure 1 Figures 2-4 The resource allocation method of the embodiments of the present application will be described in detail below based on the scenario described above.

[0032] Figure 2 A flowchart of the resource allocation method according to the embodiments of the present application is shown.

[0033] As shown in Figure 2 , the method comprises operations S210-S230.

[0034] In operation S210, in response to a triggered time period task, a base resource allocation value is determined based on a resource prediction value of a target application in a current period and a historical resource usage value of at least one historical period.

[0035] In operation S220, a feedback adjustment value is determined based on a priority weight of the target application, and performance evaluation data, a historical resource prediction value and a target historical resource usage value in a target historical period, the target historical period being a historical period adjacent to the current period.

[0036] In operation S230, a target resource allocation value of the target application in the current period is determined based on the feedback adjustment value and the base resource allocation value.

[0037] The resource allocation method can be executed in the case of reaching the trigger period of the time period task. The trigger period of the time period task is not limited, and different trigger periods can be set as needed, for example, in the daytime or other task processing intensive stage, the trigger period can be shorter; in the evening or other task processing less stage, the trigger period can be longer.

[0038] ​The application programs in the same server can share resources of the server, and the target application program can be one of multiple application programs in the server.

[0039] The resource is not limited, and can be CPU resource, memory resource, etc.

[0040] The resource prediction value and the historical resource prediction value can be predicted by a resource prediction model; and the historical resource usage value and the target resource usage value can be actual usage values of the resource in the historical period.

[0041] The specific form of the resource prediction value and the resource usage value is not limited, for example, the resource usage value can be a resource usage rate, such as CPU usage rate and memory occupancy rate; or can be a resource usage amount, such as CPU usage amount and memory occupancy amount.

[0042] The target historical period can be a historical period closest to the current period in at least one historical period, or can be a period with higher correlation with the current period.

[0043] In the case that the time period task has been triggered, the basis resource allocation value can be determined according to the resource prediction value of the target application program in the current period and the historical resource usage value in at least one historical period, so that the basis resource allocation value includes forward prediction and historical information, and the effectiveness of the basis resource allocation value is guaranteed.

[0044] The feedback adjustment value can be obtained by combining the performance evaluation data of the target historical period, the historical resource prediction value, the target historical resource usage value and the priority weight, and the basis resource allocation value can be adjusted in real time by the feedback adjustment value, so as to obtain the target resource allocation value of the target application program in the current period, that is, the dynamic adjustment of the resource allocation of the target application program according to the actual running state is realized.

[0045] According to the embodiments of the present application, the basis resource allocation value is determined by triggering the time period task and combining the resource prediction value in the current period and the historical resource usage value, priority weight, performance evaluation data of the target historical period and historical prediction error are introduced as feedback factors to dynamically correct the basis resource allocation value. Since the priority weight ensures the resource guarantee of the key application, the performance evaluation data and the historical error data form a feedback adjustment loop to dynamically adjust the basis resource allocation value, thereby at least partially solving the technical problems of resource waste or resource shortage in the related art, realizing dynamic adjustment of the resource allocation strategy according to the actual running state, improving the resource allocation accuracy and the resource utilization rate, and guaranteeing the application performance stability.

[0046] According to an embodiment of the present application, the determining of the feedback adjustment value based on the priority weight of the target application program and the performance evaluation data, the historical resource prediction value and the target historical resource usage value of the target historical period can include the following operations.

[0047] The performance score of the target application program in the target historical period is determined based on the performance evaluation data; in the case that the performance score is in the preset resource adjustment range, a first sub-adjustment value corresponding to the preset resource adjustment range is determined; the second sub-adjustment value is determined based on the difference between the historical resource prediction value and the target historical resource usage value of the target historical period and the priority weight; and the feedback adjustment value is determined based on the first sub-adjustment value and the second sub-adjustment value.

[0048] The performance evaluation data is not limited, and can be any data that can reflect the running condition of the target application program in the target historical period, for example, the performance evaluation data can include at least one of the following evaluation indexes: average response time, resource utilization, average error rate, etc.

[0049] The performance condition of the target application program in the target historical period can be quantified by the performance evaluation data, and the performance score is obtained. The preset resource adjustment range in which the performance score is located can be determined, and the first sub-adjustment value corresponding to the preset resource adjustment range is determined from the database.

[0050] The database can include a plurality of preset resource adjustment ranges and a plurality of preset sub-adjustment values corresponding to the plurality of preset resource adjustment ranges respectively. For example, in the case that the preset resource adjustment range is [95, 100], it can be considered that the resources are obviously excessive, therefore, the first resource adjustment value can be to reduce the CPU resources and / or memory resources; in the case that the preset resource adjustment range is [70, 90], it can be considered that the performance is slightly substandard, therefore, the resource adjustment value can be to increase the CPU resources and / or memory resources. The preset sub-adjustment value can be determined by multiple experiments.

[0051] And the second sub-adjustment value can be determined based on the product of the difference between the historical resource prediction value and the target historical resource usage value of the target historical period, the preset adjustment coefficient and the priority weight, so that in the resource allocation, the priority of different application programs is considered, and the target application program with high priority can be appropriately tilted in resources.

[0052] In some embodiments, the available resources of each target application program with high priority can be dynamically checked, and in the case that the available resources of the target application program are all lower than the preset value within the target step of the current period, the target resource allocation value of the target application program can be dynamically increased.

[0053] The feedback adjustment value can be the sum of the first sub-adjustment value and the second sub-adjustment value.

[0054] According to the embodiments of the present application, by converting the performance evaluation data into a quantitative score and mapping with a preset range, the determination of the first sub-adjustment value based on the actual running state is realized, and a dynamic correction factor is generated by combining the historical prediction deviation and the priority weight, thereby realizing multi-dimensional feedback adjustment. Thus, the double-layer adjustment values are coordinated to realize more accurate resource allocation even in the case of large load fluctuation.

[0055] According to the embodiments of the present application, the performance evaluation data includes at least one of the following evaluation indicators: average response time, resource utilization rate; based on the performance evaluation data, the performance score of the target application in the target historical period is determined, which can include the following operations.

[0056] Based on the application type of the target application, the importance weight of at least one evaluation indicator is determined; based on at least one importance weight and at least one evaluation indicator, the performance score is obtained.

[0057] Since different application types of application programs can have different emphases, the same evaluation indicator of different application types can also have different importance weights. For example: the importance of resource utilization rate of the application program for batch processing can be greater than the importance of response time. And for the application program for real-time interaction, the importance of response time is greater than the importance of resource utilization rate. The indicator type of each evaluation indicator can be different.

[0058] The average response time can be determined by the following formula (1), and the resource utilization rate can be determined by the following formula (2).

[0059] ; (1)

[0060] (2)

[0061] wherein, is the average response time, is the response time of the i th request, and n is the number of requests; RU is the resource utilization rate, is the actual average CPU resource usage of the i th application program; is the actual average memory resource usage of the i th application program, is the upper limit value of the system allowed CPU resource allocation, is the upper limit value of the system allowed memory resource.

[0062] According to the embodiments of the present application, in the process of obtaining the performance score based on the at least one importance weight and the at least one evaluation index, for each evaluation index, a plurality of historical evaluation indexes corresponding to the index type of the evaluation index can be determined according to the index type, and an index benchmark of each index type can be determined according to the plurality of historical evaluation indexes; the at least one evaluation index is standardized based on the index benchmark of each index type, so as to obtain the standardized evaluation index; and the at least one standardized evaluation index is weighted and summed based on the at least one importance weight, so as to determine the performance score.

[0063] For example: for the evaluation index: average response time x. The benchmark index determined according to the historical average response time is: the historical minimum value of the average response time x is x min , and the historical maximum value is x max . By calculating the current difference value of the average response time x and the historical minimum value x min , and performing division operation on the current difference value and the target difference value between the historical maximum value x max and the historical minimum value x min , an operation result is obtained. Since the smaller the value is, the closer the response time is to the optimal, 1 can be subtracted from the operation result, so as to obtain the standardized evaluation index.

[0064] Similarly, for the resource utilization rate RU, the index benchmark such as: reasonable utilization range can be determined through the historical resource utilization rate data; and the mean and variance can be determined through the reasonable utilization range, and the standardized resource utilization rate can be determined based on the bell curve method, the mean and the variance.

[0065] According to the embodiments of the present application, the index benchmark is dynamically determined based on the historical evaluation data of each index type, instead of using a fixed threshold or a unified standard for standardization processing. At least part of the defects that the traditional static standardization method cannot adapt to the dynamic characteristics of the index are solved. The benchmark data determined through the historical data makes the standardization processing more suitable for the actual distribution characteristics of the index, and improves the determination accuracy of the subsequent performance score.

[0066] In addition, the combination of index type classification and importance weight can more accurately reflect the differentiated influence of different indexes on performance, and improve the accuracy and business adaptability of the score. Through dynamic benchmarking and weighted summation, the performance score is self-adaptive to the change of business load, provides a decision basis for resource allocation, and improves the resource scheduling efficiency.

[0067] According to the embodiments of the present application, by adaptively adjusting the importance weight of the sub-evaluation indicators such as the average response time and the resource utilization according to the type of the target application program, the performance score can accurately reflect the core needs of different types of applications. Thus, the risk of resource mismatch caused by evaluation deviation is effectively reduced.

[0068] According to the embodiments of the present application, the operation of determining the basic resource allocation value based on the resource prediction value of the target application program in the current period and the historical resource usage value of at least one historical period can include the following operations.

[0069] The preset safety factor is multiplied by the average of the historical resource usage values of the at least one historical period to obtain a historical resource reference value; and the resource prediction value and the historical resource reference value are weighted and summed to determine the basic resource allocation value.

[0070] The preset safety factor can avoid the situation of insufficient resource allocation. The preset safety factor is not limited, and can be determined according to actual needs, such as 1.2.

[0071] The resource prediction value of the prediction model and the historical resource reference value can be combined and different weights can be assigned to obtain the basic resource allocation value.

[0072] According to the embodiments of the present application, by using the preset safety factor, the average of the historical resource usage can be amplified to form a conservative reference value, and the resource prediction value is weighted and fused, so that the forward-looking ability of the prediction model is introduced, and the stability of the historical usage data is retained. When the prediction model fails due to sudden traffic, the historical data can be used as a bottom line, so that the limitations of the traditional single prediction or historical average allocation method in the face of business fluctuations are avoided to some extent.

[0073] Figure 3 A data flow diagram for determining a feedback adjustment value according to an embodiment of the present application is shown.

[0074] As shown in Figure 3 , a plurality of evaluation indicators can be calculated, including the average response time 301 and the resource utilization 302. The importance weight A 303 of the average response time and the importance weight B 304 of the resource utilization corresponding to the application type of the target application program are determined from the database. And based on the importance weight A 303, the importance weight B 304, the average response time 301 and the resource utilization 302, the performance score 305 of the target application program in the target historical period is determined. And the first sub-adjustment value 307 corresponding to the preset resource adjustment range 306 where the performance score is located is determined from the database.

[0075] Further, a second sub-adjustment value 312 can be obtained based on a difference 310 between the historical resource prediction value 308 and the target historical resource usage value 309 of the target application in the target historical period and a priority weight 311. Then, a feedback adjustment value 313 can be obtained by adding the first sub-adjustment value 307 and the second sub-adjustment value 312.

[0076] According to an embodiment of the present application, determining the target resource allocation value of the target application in the current period based on the feedback adjustment value and the base resource allocation value can include the following operations.

[0077] Based on the base resource allocation value and a preset stability coefficient, a stability resource allocation value is obtained; based on the feedback adjustment value, the base resource allocation value is adjusted to obtain a dynamic resource allocation value; and the larger one of the stability resource allocation value and the dynamic resource allocation value is taken as the target resource allocation value.

[0078] The base resource allocation value can include a base CPU resource allocation value and a base memory resource allocation value. The first sub-adjustment value can include a first CPU sub-adjustment value and a first memory sub-adjustment value. The second sub-adjustment value can include a second CPU sub-adjustment value and a second memory sub-adjustment value.

[0079] Adjusting the base resource allocation value based on the feedback adjustment value can be as shown in the following formulas (3)~(4).

[0080] (3)

[0081] (4)

[0082] wherein, is a CPU resource allocation value of the i th application in the t th period, is a memory resource allocation value of the i th application in the t th period, is a base CPU resource allocation value in the t th period, is a base memory resource allocation value of the i th application in the t th period, is a first CPU sub-adjustment value of the i th application in the t th period, is a first memory sub-adjustment value of the i th application in the t th period, and is a first adjustment coefficient, is a second CPU sub-adjustment value of the i th application in the t th period, is a second memory sub-adjustment value of the i th application in the t th period, is a second adjustment coefficient, is a priority weight of the i th application, a difference between the historical CPU resource prediction value and the target historical CPU resource usage value, a difference between the historical memory resource prediction value and the target historical memory resource usage value.

[0083] and The calculation formula can be as shown in the following formula (5) to formula (6).

[0084] (5)

[0085] (6)

[0086] wherein, the target historical CPU resource usage value, the target historical memory resource usage value, the historical CPU resource prediction value, the historical memory resource prediction value.

[0087] The preset stability coefficient can be used to ensure that, when resources are tight or the dynamic resource allocation value is too small due to dynamic adjustment of the basic resource allocation value, the target application program can at least obtain the stability resource allocation value, so as to ensure that the business processing in the target application program proceeds normally.

[0088] The preset stability coefficient is not limited, and different values can be set according to actual needs, such as 0.8.

[0089] In some embodiments, the target resource allocation value can be further adjusted, such as using a load balancing algorithm for further adjustment.

[0090] According to the embodiments of the present application, a dual-path resource allocation decision mechanism combining stability and bottom line with dynamic optimization is constructed by the stability resource allocation value and the dynamic resource allocation value, a basic guarantee value is generated through the preset stability coefficient, a dynamic value is generated based on a dynamic adjustment factor, and finally the maximum value of the two is taken as the allocation result. That is, a bottom line guarantee is provided through the stability coefficient, and when the dynamic adjustment value is too low due to abnormal fluctuations such as prediction model deviation, the application program can still ensure to obtain the resource amount for maintaining the basic function, reducing the risk of system crash.

[0091] In addition, based on real-time CPU and memory usage values, dynamic resource scheduling including priority scheduling strategy can be used to flexibly adjust the resource allocation proportion according to the actual needs of the application program, better utilize the existing resources, and the dynamic adjustment mechanism not only improves the resource utilization rate, but also can prioritize the running of key applications when resources are tight, reduces the risk of service interruption due to insufficient resources, and improves the overall stability and response speed of the system.

[0092] According to an embodiment of the present application, the resource allocation method further includes the following operations.

[0093] Based on the target resource allocation value and the upper limit value of resource allocation corresponding to the target application program, a resource usage range of the target application program is determined; and based on the resource usage range, a resource configuration file of a virtual machine used for running the target application program is updated to obtain a resource configuration result of the target application program, wherein the resource configuration file is used for limiting resource usage of the target application program.

[0094] In the initial configuration stage of the target application program, an independent resource space can be created for the application program through virtualization technology or containerization technology, so as to solve the resource contention problem among multiple application programs and ensure that each application program obtains an independent and controllable resource space. The virtualization technology can be, for example, Kernel-based Virtual Machine (KVM) technology.

[0095] The CPU and memory resource amounts required by each application program are defined by setting a resource configuration file of a virtual machine or a container, and a configured virtualization environment is obtained.

[0096] In the application program startup stage, an automated deployment tool can be used to create and start the virtual machines or containers in the configured virtualization environment in batches to obtain an initialized application program running environment.

[0097] The control group mechanism (cgroups mechanism) can be used to limit the resource usage of each virtual machine or container in the initialized application program running environment. The cgroups mechanism can control the CPU usage amount and the memory resource amount that can be used by each application program based on the resource usage range in the resource configuration file.

[0098] In each time period task, after the target resource allocation value is obtained, the resource usage range of the target application program can be determined according to the preset upper limit value of resource allocation, and the resource usage range is updated in the resource configuration file of the virtual machine running the target application program. The upper limit value of resource allocation is the expected maximum resource amount, which can be determined according to the historical resource usage value of the target application program.

[0099] The resource usage range can include a CPU resource usage range and a memory resource usage range, as shown in the following formulas (7) and (8). In specific use, the smaller value between the target resource allocation value and the upper limit value of resource allocation can be used as the actual maximum resource amount that can be used by the target application program according to the resource usage range.

[0100] (7)

[0101] (8)

[0102] wherein, is an actual maximum CPU resource amount of the i-th application, is an actual maximum memory resource amount of the i-th application, is an upper limit value of CPU resource allocation of the i-th application, is an upper limit value of memory resource allocation of the i-th application.

[0103] The preset monitoring tool and the display tool can be used to continuously monitor and display the actual resource usage in the target application running environment, and handle the resource overrun situation to obtain a stable application environment.

[0104] According to the embodiments of the present application, the real-time CPU usage value and the memory occupation value of the target application are continuously collected and displayed by the real-time monitoring tool, which not only can discover potential problems in time, but also can help the relevant staff to quickly respond and adjust the resource configuration.

[0105] According to the embodiments of the present application, the elastic resource range is generated by dynamically comparing the target resource allocation value with the preset maximum allocation value, and the range is directly mapped to the resource configuration file of the virtual machine to realize the isolation of resource usage between applications and the real-time update of the resource configuration file, which ensures the dynamic and real-time of the resource allocation strategy.

[0106] According to the embodiments of the present application, the historical resource prediction value is obtained by the resource prediction model; and the resource allocation method further includes the following operations.

[0107] In the case that the difference between the historical resource prediction value and the target historical resource usage value in the target historical period is greater than the preset threshold for a continuous predetermined number of times, the resource prediction model is adjusted based on the historical resource prediction value and the historical resource usage value in the target historical period to obtain an updated resource prediction model.

[0108] The implementation of the resource prediction model is not limited, and can be a Long Short-Term Memory Network (LSTM), a Temporal Convolutional Network (TCN), etc.

[0109] In the case that the historical resource prediction value and the target historical resource usage value are greater than the preset threshold for a continuous number of times, i.e., the resource prediction model has a long-term prediction inaccuracy, the historical resource prediction value and the historical resource usage value in the target historical period can be added to the data set of the resource prediction model to adjust the parameters of the resource prediction model.

[0110] According to the embodiments of the present application, when it is determined that the resource prediction model has long-term prediction inaccuracy, parameter adjustment is performed again, which can avoid model prediction inaccuracy caused by too large load or task processing fluctuation of the target application program in a short time.

[0111] In the process of training the resource prediction model, a data collection tool can be used to collect historical running data of the target application program to obtain a historical running data set; a machine learning algorithm is used to process and analyze the historical running data set to generate a training set and a test set of the resource prediction model, and then the training set is used to train the resource prediction model, and the test set is used to test the resource prediction model.

[0112] The process of collecting historical running data of multiple application programs using a data collection tool to obtain a historical running data set can include the following steps.

[0113] A preset monitoring system is used to monitor each application program in an application program execution environment configured with a virtualization technology, the data collection capability of the preset monitoring system is extended by setting an index collector in the preset monitoring system, and historical running data of the application program is obtained; a preset query language in the preset monitoring system is used to process the historical running data of the application program, and average CPU usage value and average memory usage value of each application program in a specific time period are calculated; a data cleaning algorithm is used to clean the historical running data after preliminary processing, and abnormal values and incomplete data records are removed to obtain the historical running data set.

[0114] The average CPU usage value can be average CPU usage rate or average CPU usage amount; and the average memory usage value can be average memory usage rate or average memory usage amount.

[0115] According to the embodiments of the present application, by using the preset monitoring system and the preset query language to process the historical running data of the application program, not only the resource usage value of each application program can be accurately calculated, but also abnormal values and incomplete data records can be effectively removed, ensuring the accuracy and integrity of the historical running data set, providing a reliable data basis for subsequent steps, helping to improve the accuracy of the prediction model, and finally realizing more effective resource management.

[0116] The process and analysis of the historical running data set using a machine learning algorithm to generate a training set of the resource prediction model can include the following steps.

[0117] The historical running data set is preprocessed by using a preset preprocessing tool; the preprocessing includes data standardization and normalization operation, so that all characteristic values are in the same scale range, and a standardized data set is obtained; the standardized data set is divided by using a time sequence segmentation method, so that the data set is divided into a training set and a test set; the training set and the test set can be segmented according to a ratio of 70% data for training and 30% data for testing, so that the training set and the test set are obtained.

[0118] In the process of training the initial resource prediction model by using the training set, the loss can be minimized by adjusting the network parameters. The expression of the loss function can be as formula (9) as follows.

[0119] (9)

[0120] wherein, is a loss value, m is a sample number, is a resource usage value, is a resource prediction value.

[0121] The smaller the MSE value is, the better the prediction effect of the model is, and in the case that the MSE value meets the iteration condition, an initially trained initial resource prediction model is obtained. The cross-validation technique can be used to evaluate the initially trained initial resource prediction model, the training set and the test set are randomly divided for multiple times, and the average loss value of each time is calculated, so that a trained resource prediction model is obtained.

[0122] The historical resource usage value of at least one historical period can be input into the resource prediction model, so that the resource prediction value of the current period is obtained. In the case that the resource prediction model is an LSTM model, the resource prediction value is as shown in formula (10) and formula (11).

[0123] (10)

[0124] (11)

[0125] wherein, LSTM() represents a resource prediction model, is a historical CPU resource usage value of a t'th period, is a historical memory resource usage value of the t'th period.

[0126] According to the embodiments of the present application, the data preprocessing is performed through the preset preprocessing library, and the optimized resource prediction model is trained by using a deep learning model such as an LSTM model, so that the accuracy of prediction can be improved. The resource prediction model can not only capture long-term dependencies in data, but also adapt to changing application load conditions, thereby providing strong support for dynamic adjustment strategies and ensuring efficient and stable operation of the system under high load conditions.

[0127] Figure 4 A data flow diagram for resource configuration is shown according to an embodiment of the present application.

[0128] As shown in Figure 4 , in the case of triggering the time period task 401, the basic resource allocation value 404 can be determined based on the resource prediction value 402 of the target application in the current period and the historical resource usage value 403 of at least one historical period; and the feedback adjustment value 409 can be obtained based on the priority weight 405 of the target application, and the performance evaluation data 406 in the target historical period, the historical resource prediction value 407 and the target historical resource usage value 408.

[0129] Thus, the target resource allocation value 410 is obtained by dynamically adjusting the basic resource allocation value 402 by the feedback adjustment value 409.

[0130] The resource usage range 412 of the target application can be obtained based on the target resource allocation value 410 and the upper limit value 411 of resource allocation, and the resource configuration file 413 of the virtual machine running the target application is updated by using the resource usage range 412, so as to obtain the resource configuration result 414 of the target application, so as to realize the resource usage limitation of the target application.

[0131] In addition, the actual running data of each application in the stable running application environment can be continuously monitored and calculated by using a preset monitoring system, so as to obtain the performance evaluation data in the current period.

[0132] The performance evaluation data obtained above is compared and analyzed with the preset index range by using a comparative analysis method, so as to obtain a performance analysis result. The performance comparison result includes: performance bottleneck, resource waste or normal state.

[0133] In the case of performance bottleneck or resource waste in the performance comparison result, the performance analysis result is analyzed by using a root cause analysis tool to find out the root cause of the performance bottleneck or resource waste.

[0134] Further, the root cause analysis report is fed back to the relevant staff by using a feedback mechanism, and the corresponding improvement strategy is matched from the database according to the specific situation.

[0135] According to the embodiments of the present application, the performance evaluation method is adopted to check the running effect of the application program in combination with the feedback mechanism, and improvement measures are proposed according to the evaluation results, so that the system performance can be continuously optimized, and the closed-loop management mode not only helps to identify the performance bottleneck and resource waste problems in the system, but also guides the operation and maintenance personnel to carry out targeted optimization, thereby gradually improving the running efficiency and service quality of the system.

[0136] Based on the above resource allocation method, the present application further provides a resource allocation device. The following will be combined with the Figure 5 The device will be described in detail.

[0137] Figure 5 The structure block diagram of the resource allocation device according to the embodiments of the present application is shown.

[0138] As Figure 5 shown, the resource allocation device 500 of the embodiments includes a first determination module 510, a second determination module 520 and a third determination module 530.

[0139] The first determination module 510 is configured to determine a basic resource allocation value based on the resource prediction value of the target application program in the current period and the historical resource usage value of at least one historical period in response to the triggered time period task.

[0140] The second determination module 520 is configured to determine a feedback adjustment value based on the priority weight of the target application program, and the performance evaluation data, the historical resource prediction value and the target historical resource usage value in the target historical period, the target historical period being a historical period adjacent to the current period.

[0141] The third determination module 530 is configured to determine a target resource allocation value of the target application program in the current period based on the feedback adjustment value and the basic resource allocation value.

[0142] According to the embodiments of the present application, the second determination module includes a score determination sub-module, a first value determination sub-module, a second value determination sub-module and a third value determination sub-module.

[0143] The score determination sub-module is configured to determine a performance score of the target application program in the target historical period based on the performance evaluation data.

[0144] The first value determination sub-module is configured to determine a first sub-adjustment value corresponding to the preset resource adjustment range in the case that the performance score is in the preset resource adjustment range.

[0145] The second value determination sub-module is configured to determine a second sub-adjustment value based on the difference between the historical resource prediction value and the target historical resource usage value of the target historical period, and the priority weight.

[0146] The third value determination submodule is configured to determine the feedback adjustment value based on the first sub-adjustment value and the second sub-adjustment value.

[0147] According to an embodiment of the present application, the performance evaluation data comprises at least one of the following evaluation indexes: average response time, resource utilization. The score determination submodule comprises a weight determination unit and a weighted summation unit.

[0148] The weight determination unit is configured to determine an importance weight for at least one evaluation index based on the application type of the target application program.

[0149] The weighted summation unit is configured to perform weighted summation on at least one evaluation index based on at least one importance weight to obtain a performance score.

[0150] According to an embodiment of the present application, the third determination module comprises a stability value determination submodule, a dynamic value determination submodule and a target value determination submodule.

[0151] The stability value determination submodule is configured to obtain a stability resource allocation value based on the base resource allocation value and a preset stability coefficient.

[0152] The dynamic value determination submodule is configured to adjust the base resource allocation value based on the feedback adjustment value to obtain a dynamic resource allocation value.

[0153] The target value determination submodule is configured to take the larger one of the stability resource allocation value and the dynamic resource allocation value as a target resource allocation value.

[0154] According to an embodiment of the present application, the first determination module comprises a reference value determination submodule and an allocation value determination submodule.

[0155] The reference value determination submodule is configured to multiply a preset safety coefficient and a mean value of historical resource usage values of at least one historical period to obtain a historical resource reference value.

[0156] The allocation value determination submodule is configured to perform weighted summation on the resource prediction value and the historical resource reference value to determine a base resource allocation value.

[0157] According to an embodiment of the present application, the resource allocation apparatus 500 further comprises a range determination module and a file updating module.

[0158] The range determination module is configured to determine a resource usage range of the target application program based on the target resource allocation value and a resource allocation upper limit value corresponding to the target application program.

[0159] The file updating module is configured to update a resource configuration file of a virtual machine used for running the target application based on the resource usage range, to obtain a resource configuration result of the target application, wherein the resource configuration file is used for limiting resource usage of the target application.

[0160] According to an embodiment of the present application, the historical resource prediction value is predicted by the resource prediction model. The resource allocation apparatus 500 further comprises a parameter adjustment module.

[0161] The parameter adjustment module is configured to, when the difference between the historical resource prediction value and the historical resource usage value of the target historical period is greater than the preset threshold value for a continuous predetermined number of times, adjust the resource prediction model based on the historical resource prediction value and the target historical resource usage value of the target historical period, to obtain an updated resource prediction model.

[0162] According to an embodiment of the present application, any one or more of the first determining module 510, the second determining module 520 and the third determining module 530 can be combined in one module, or any one of them can be split into multiple modules. Alternatively, at least part of the function of one or more of these modules can be combined with at least part of the function of other modules, and implemented in one module. According to an embodiment of the present application, at least one of the first determining module 510, the second determining module 520 and the third determining module 530 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on board, a system on package, an application specific integrated circuit (ASIC), or any other reasonable way of hardware or firmware that can be integrated or packaged, or any one of software, hardware and firmware or any appropriate combination of any of them. Alternatively, at least one of the first determining module 510, the second determining module 520 and the third determining module 530 can be at least partially implemented as a computer program module which can perform corresponding functions when executed.

[0163] Figure 6 A block diagram of an electronic device suitable for implementing the resource allocation method according to an embodiment of the present application is shown.

[0164] As Figure 6As shown, an electronic device 600 according to an embodiment of the present application includes a processor 601, which can perform various appropriate actions and processes based on a program stored in a read-only memory (ROM) 602 or a program loaded from a storage unit 608 into a random access memory (RAM) 603. The processor 601 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include onboard memory for caching purposes. The processor 601 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present application.

[0165] Various programs and data required for the operation of the electronic device 600 are stored in the RAM 603. The processor 601, ROM 602, and RAM 603 are connected to each other via a bus 604. The processor 601 performs various operations of the method flow according to the embodiment of the present application by executing the programs in the ROM 602 and / or RAM 603. It should be noted that the programs may also be stored in one or more memories other than the ROM 602 and RAM 603. The processor 601 may also perform various operations of the method flow according to the embodiment of the present application by executing the programs stored in the one or more memories.

[0166] According to an embodiment of the present application, electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to bus 604. Electronic device 600 may also include one or more of the following components connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including devices such as a cathode ray tube (CRT), liquid crystal display (LCD), and speakers; a storage section 608 including a hard disk; and a communication section 609 including a network interface card such as a LAN card or modem. Communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. Removable media 611, such as a magnetic disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed in drive 610 as needed, so that computer programs read from the removable media can be installed into storage section 608 as needed.

[0167] The application further provides a computer readable storage medium, which can be included in the device / apparatus / system described in the above embodiments, or can exist independently without being assembled into the device / apparatus / system. The computer readable storage medium carries one or more programs, which, when executed, implement the method according to the embodiments of the application.

[0168] According to the embodiments of the application, the computer readable storage medium can be a non-volatile computer readable storage medium, which can include, but is not limited to, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any appropriate combination thereof. In this application, a computer readable storage medium can be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. For example, according to the embodiments of the application, the computer readable storage medium can include one or more of the above-described ROM 602 and / or RAM 603 and / or one or more memories other than the ROM 602 and the RAM 603.

[0169] The embodiments of the application also include a computer program product, which includes a computer program containing program codes for executing the methods shown in the flowcharts. When the computer program product is run in a computer system, the program codes are used to make the computer system implement the methods provided by the embodiments of the application.

[0170] The above-described functions defined in the system / apparatus of the embodiments of the application are performed when the computer program is executed by the processor 601. According to the embodiments of the application, the above-described system, apparatus, module, unit, etc. can be implemented by computer program modules.

[0171] In one embodiment, the computer program can rely on a tangible storage medium such as an optical storage device, a magnetic storage device, etc. In another embodiment, the computer program can also be transmitted, distributed, and downloaded in the form of a signal on a network medium, and be downloaded and installed through the communication part 609 and / or installed from the detachable medium 611. The program codes contained in the computer program can be transmitted by any appropriate network medium, including but not limited to wireless, wired, etc., or any appropriate combination thereof.

[0172] In such embodiments, the computer program can be downloaded and installed from the network via the communication section 609, and / or installed from the removable media 611. When the computer program is executed by the processor 601, the above-described functions defined in the system of the embodiments of the present application are performed. According to the embodiments of the present application, the system, device, apparatus, module, unit, and the like described above can be realized by the computer program module.

[0173] According to the embodiments of the present application, the program code for executing the computer program provided by the embodiments of the present application can be written in any combination of one or more programming languages, and specifically, these computer programs can be implemented using high-level procedural and / or object-oriented programming language, and / or assembly / machine language. The programming language includes, but is not limited to, such as Java, C++, python, "C" language or similar programming language. The program code can be executed entirely on the user computing device, partially on the user device, partially on a remote computing device, or entirely on a remote computing device or server. In the case involving a remote computing device, the remote computing device can be connected to the user computing device through any kind of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, connected to the Internet through an Internet service provider).

[0174] The flowcharts and block diagrams in the drawings illustrate the possible implementation architectures, functions, and operations of the systems, methods, and computer program products according to various embodiments of the present application. In this regard, each block in the flowcharts or block diagrams can represent a module, a program segment, or a portion of code that contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions noted in the blocks can occur in different orders than those noted in the drawings. For example, two blocks that are shown in succession can actually be executed substantially concurrently, or they can sometimes be executed in reverse order, depending on the involved functions. It should also be noted that each block in the block diagrams or flowcharts, and the combination of blocks in the block diagrams or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.

[0175] Those skilled in the art can understand that the features described in various embodiments of the present application can be combined and / or integrated in various combinations, even if such combinations are not explicitly described in the present application. In particular, the features described in various embodiments of the present application can be combined and / or integrated in various combinations without departing from the spirit and teachings of the present application. All such combinations and / or integrations fall within the scope of the present application.

[0176] The embodiments of the application have been described. However, these embodiments are merely for illustration and are not intended to limit the scope of the application. Although each embodiment is described above separately, this does not mean that the measures in each embodiment cannot be used advantageously in combination. Various alternatives and modifications to the embodiments described herein will be apparent to those skilled in the art in view of the foregoing description. Such alternatives and modifications are intended to fall within the scope of the application.

Claims

1. A resource allocation method, characterized in that: The method comprises: In response to the triggered time period task, determining a basic resource allocation value based on a resource prediction value of the target application in a current period and a historical resource usage value of at least one historical period; Determining a feedback adjustment value based on the priority weight of the target application, and performance evaluation data, historical resource prediction values, and target historical resource usage values ​​during a target historical period, wherein the target historical period is a historical period adjacent to the current period; Determining a target resource allocation value for the target application in a current period based on the feedback adjustment value and the basic resource allocation value; Among them, the target resource allocation value of the target application in the current time period is determined based on the feedback adjustment value and the basic resource allocation value, including: obtaining a stabilization resource allocation value based on the basic resource allocation value and a preset stabilization coefficient; adjusting the basic resource allocation value based on the feedback adjustment value to obtain a dynamic resource allocation value; taking the larger of the stabilization resource allocation value and the dynamic resource allocation value as the target resource allocation value; determining the feedback adjustment value based on the priority weight of the target application, as well as the performance evaluation data, historical resource prediction value and target historical resource usage value in the target historical time period, including: determining the performance score of the target application in the target historical time period based on the performance evaluation data; determining a first sub-adjustment value corresponding to the preset resource adjustment range when it is determined that the performance score is within the preset resource adjustment range; determining a second sub-adjustment value based on the difference between the historical resource prediction value and the target historical resource usage value of the target historical time period, and the priority weight; and determining the feedback adjustment value based on the first sub-adjustment value and the second sub-adjustment value.

2. The resource allocation method according to claim 1, characterized in that: The performance evaluation data includes at least one of the following evaluation indicators: average response time and resource utilization; and determining the performance score of the target application in the target historical period based on the performance evaluation data includes: determining an importance weight for at least one of the evaluation indicators based on an application type of the target application; The performance score is obtained based on at least one of the importance weights and at least one of the evaluation indicators.

3. The resource allocation method according to claim 1, wherein: The determining of the basic resource allocation value based on the resource prediction value of the target application in the current period and the historical resource usage value of at least one historical period includes: Multiplying a preset safety factor by an average of historical resource usage values ​​of at least one of the historical periods to obtain a historical resource reference value; The resource prediction value and the historical resource reference value are weightedly summed to determine the basic resource allocation value.

4. The resource allocation method according to claim 1, wherein: The resource allocation method further includes: determining a resource usage range of the target application based on the target resource allocation value and a resource allocation upper limit corresponding to the target application; Based on the resource usage range, a resource configuration file of a virtual machine used to run the target application is updated to obtain a resource configuration result of the target application, wherein the resource configuration file is used to limit resource usage of the target application.

5. The resource allocation method according to claim 1, characterized in that: The historical resource prediction value is obtained by prediction by a resource prediction model; the resource allocation method further includes: When the difference between the historical resource prediction value of the target historical period and the target historical resource usage value is greater than a preset threshold for a predetermined number of consecutive times, the parameters of the resource prediction model are adjusted based on the historical resource prediction value and the historical resource usage value of the target historical period to obtain an updated resource prediction model.

6. A resource allocation device, characterized in that: The resource allocation device includes: A first determining module is configured to determine, in response to a triggered time period task, a basic resource allocation value based on a resource prediction value of a target application in a current period and a historical resource usage value of at least one historical period; a second determining module, configured to determine a feedback adjustment value based on the priority weight of the target application, and performance evaluation data, historical resource prediction values, and target historical resource usage values ​​in a target historical period, wherein the target historical period is a historical period adjacent to the current period; a third determining module, configured to determine a target resource allocation value for the target application in a current time period based on the feedback adjustment value and the basic resource allocation value; The third determining module includes: A stabilization value determination submodule, configured to obtain a stabilization resource allocation value based on the basic resource allocation value and a preset stabilization coefficient; a dynamic value determination submodule, configured to adjust the basic resource allocation value based on the feedback adjustment value to obtain a dynamic resource allocation value; a target value determination submodule, configured to use the larger of the stability maintenance resource allocation value and the dynamic resource allocation value as the target resource allocation value; The second determining module includes: a score determination submodule, configured to determine a performance score of the target application in a target historical period based on the performance evaluation data; a first value determination submodule, configured to, when determining that the performance score is within a preset resource adjustment range, determine a first sub-adjustment value corresponding to the preset resource adjustment range; a second value determination submodule, configured to determine a second sub-adjustment value based on a difference between the historical resource prediction value and the target historical resource usage value for the target historical period, and the priority weight; The third value determination submodule is configured to determine the feedback adjustment value based on the first sub-adjustment value and the second sub-adjustment value.

7. An electronic device comprising: one or more processors; a memory for storing one or more computer programs, The method is characterized in that the one or more processors execute the one or more computer programs to implement the steps of the resource allocation method according to any one of claims 1 to 5.

8. A computer-readable storage medium having a computer program or instruction stored thereon, characterized in that: When the computer program or instruction is executed by a processor, the steps of the resource allocation method according to any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Hybrid NR service dynamic resource allocation method and system

    CN118804317A