A hybrid deployment resource scheduling method, apparatus, device, medium and product

By constructing a two-tier resource pool architecture and dynamically adjusting resource utilization using load prediction curves, the problem of mismatch between resource supply and load demand in cloud-native scheduling systems is solved, enabling flexible resource transfer and efficient utilization.

CN122240308APending Publication Date: 2026-06-19SHANGHAI JIACHE INFORMATION TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHANGHAI JIACHE INFORMATION TECH CO LTD
Filing Date
2026-03-18
Publication Date
2026-06-19

Smart Images

  • Figure CN122240308A_ABST
    Figure CN122240308A_ABST
Patent Text Reader

Abstract

This invention discloses a hybrid deployment resource scheduling method, apparatus, device, medium, and product. It acquires hybrid deployment requests containing online services and offline tasks, generates a load prediction curve based on the hybrid deployment requests, and initializes a two-tier resource pool architecture. The two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. Based on real-time load data from the two-tier resource pool architecture, the load prediction curve is periodically updated. According to the updated load prediction curve, the upper and lower limits of resource utilization in the two-tier resource pool architecture are dynamically adjusted. If the actual resource utilization of any resource pool in the two-tier resource pool architecture exceeds the upper limit or falls below the lower limit, resource allocation and balancing are performed on each resource pool in the two-tier resource pool architecture through the shared buffer. This enables resource transfer between online and offline resource pools, improving resource utilization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of computer technology, and in particular to a hybrid deployment resource scheduling method, apparatus, device, medium and product. Background Technology

[0002] Existing cloud-native scheduling systems mostly adopt a single resource pool management model, where online services and offline tasks share the same physical resource pool, and business logic is separated through resource isolation technology. This model may lead to a mismatch between resource supply and load demand, resulting in low overall resource utilization. For example, during low-load periods for online services, a large amount of allocated computing power remains idle; conversely, during peak periods for offline tasks, the allocated resources are overloaded. Summary of the Invention

[0003] This invention provides a hybrid deployment resource scheduling method, apparatus, equipment, medium, and product that enables flexible resource transfer between online and offline resource pools, thereby improving overall resource utilization.

[0004] In a first aspect, embodiments of the present invention provide a hybrid deployment resource scheduling method, including: Obtain a mixed deployment request that includes online services and offline tasks, generate a load prediction curve based on the mixed deployment request, and initialize a two-tier resource pool architecture; the two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools; Based on the real-time load data of the aforementioned two-layer resource pool architecture, the load prediction curve is periodically updated. Based on the updated load prediction curve, dynamically adjust the upper and lower limits of resource utilization in the two-tier resource pool architecture; If the actual resource utilization rate of any resource pool in the two-layer resource pool architecture exceeds the upper limit of resource utilization or falls below the lower limit of resource utilization, then the shared buffer is used to allocate and balance resources among the resource pools in the two-layer resource pool architecture.

[0005] Secondly, embodiments of the present invention provide a hybrid deployment resource scheduling device, comprising: The first processing module is used to obtain a mixed deployment request containing online services and offline tasks, generate a load prediction curve based on the mixed deployment request, and initialize a two-layer resource pool architecture. The two-layer resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. The second processing module is used to periodically update the load prediction curve based on the real-time load data of the two-layer resource pool architecture. The third processing module is used to dynamically adjust the upper limit and lower limit of resource utilization in the two-layer resource pool architecture according to the updated load prediction curve. The fourth processing module is used to perform resource allocation and balancing on each resource pool in the dual-layer resource pool architecture through the shared buffer if the actual resource utilization rate of any resource pool in the dual-layer resource pool architecture exceeds the upper limit of resource utilization or falls below the lower limit of resource utilization.

[0006] Thirdly, embodiments of the present invention provide an electronic device, including: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the method as described in the first aspect.

[0007] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing computer instructions that cause a processor to execute the method described in the first aspect.

[0008] Fifthly, embodiments of the present invention provide a computer program product, the computer program product including a computer program, which, when executed by a processor, implements the method described in the first aspect.

[0009] The technical solution of this invention involves obtaining a hybrid deployment request that includes online services and offline tasks, generating a load prediction curve based on the hybrid deployment request, and initializing a two-tier resource pool architecture. The two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. Based on real-time load data from the two-tier resource pool architecture, the load prediction curve is periodically updated. According to the updated load prediction curve, the upper and lower limits of resource utilization in the two-tier resource pool architecture are dynamically adjusted. If the actual resource utilization of any resource pool in the two-tier resource pool architecture exceeds the upper limit or falls below the lower limit, resource allocation and balancing are performed on each resource pool in the two-tier resource pool architecture through the shared buffer. This solution constructs a two-layer resource pool architecture that includes an online resource pool, an offline resource pool, and a shared buffer. It dynamically adjusts the upper and lower limits of resource utilization based on load prediction. When the resource utilization of any resource pool exceeds the upper limit or falls below the lower limit, it triggers real-time resource allocation and balancing across resource pools, enabling flexible flow of resources between the online and offline resource pools and improving overall resource utilization.

[0010] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0011] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0012] Figure 1 This is a flowchart of a hybrid deployment resource scheduling method provided in Embodiment 1 of the present invention; Figure 2 This is a schematic diagram of a two-layer resource pool architecture provided according to Embodiment 1 of the present invention; Figure 3 This is a schematic diagram of a hybrid deployment resource scheduling device according to Embodiment 2 of the present invention; Figure 4 This is a schematic diagram of the structure of an electronic device that implements an embodiment of the present invention. Detailed Implementation

[0013] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0014] It should be noted that the terms "first," "second," etc., used in this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0015] Example 1 Figure 1This is a flowchart of a hybrid deployment resource scheduling method according to Embodiment 1 of the present invention. This embodiment is applicable to the implementation of hybrid deployment resource scheduling. The method can be executed by a hybrid deployment resource scheduling device, which can be implemented in software and / or hardware and integrated into an electronic device. Further, the electronic device includes, but is not limited to, computers, laptops, etc.

[0016] like Figure 1 As shown, the method includes: S110. Obtain a mixed deployment request containing online services and offline tasks, generate a load prediction curve based on the mixed deployment request, and initialize a two-tier resource pool architecture; the two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools.

[0017] First, the two-layer resource pool architecture in the embodiments of the present invention will be described. Figure 2 This is a schematic diagram of a two-tier resource pool architecture provided in Embodiment 1 of the present invention, as shown below. Figure 2 As shown, the two-layer resource pool architecture is supported by shared physical resources. It divides resources into online resource pools and offline resource pools, and the two pools achieve dynamic resource transfer through a shared buffer.

[0018] The online resource pool is used to support high-priority, low-latency online services (such as microservice A and microservice B) and ensure the stability of the Service Level Agreement (SLA). Typical online service instances, such as application programming interface (API) gateways and user centers, require fixed resources to guarantee response time; therefore, a minimum resource quota is configured for the online resource pool as a resource guarantee.

[0019] The offline resource pool is used to host batch processing and non-real-time offline tasks (such as training task C and training task D), and supports elastic scaling. Typical offline task instances, such as AI model training, have resource requirements that change dynamically with the task cycle. Therefore, elastic quotas are allocated to offline tasks, which can be dynamically borrowed / reclaimed based on the load of the online resource pool.

[0020] The shared buffer acts as a dynamic resource adjustment hub, used to achieve resource allocation and balancing between the online and offline resource pools.

[0021] Physical resources are provided by the underlying server cluster, including resources such as central processing units (CPU), graphics processing units (GPU), and memory, providing actual computing power support for online and offline resource pools.

[0022] The aforementioned two-tier resource pool architecture enables refined resource management in hybrid deployment scenarios through dynamic isolation and sharing of physical resources between online and offline resource pools.

[0023] In this step, the predictor responds to the user's submission of a hybrid deployment request and obtains a hybrid deployment request containing online services and offline tasks; the predictor inputs the request parameters carried by the hybrid deployment request into the load prediction model, outputs an initial load prediction curve, and transmits the load prediction curve to the scheduler; the scheduler initializes the parameters that need to be initialized in the two-tier resource pool architecture based on the load prediction curve.

[0024] The load prediction model can be a Long Short-Term Memory (LSTM) network model. The initial load prediction curve can characterize the online / offline load over a future period of time, such as 48 hours, at the initial prediction time. The curve can mark the peak and trough periods of the load, providing a basis for configuring the initialization parameters of the two-layer resource pool architecture.

[0025] S120. Based on the real-time load data of the dual-layer resource pool architecture, periodically update the load prediction curve.

[0026] In practical applications, the load prediction curve is updated periodically by the predictor, such as every 5 minutes. Each time the load prediction curve is updated, real-time load data of the two-tier resource pool architecture is acquired, such as real-time CPU / GPU / memory utilization. The input of the load prediction model is updated using this real-time load data; specifically, this can involve updating the load-related parts of the request parameters carried by the hybrid deployment request. The updated input then drives the load prediction model to output the updated load prediction curve. The updated load prediction curve is then transmitted to the scheduler for further processing.

[0027] S130. Based on the updated load prediction curve, dynamically adjust the upper limit and lower limit of resource utilization in the two-layer resource pool architecture.

[0028] The upper limit of resource utilization can be the threshold that triggers resource preemption (i.e., resource borrowing). The lower limit of resource utilization can be the threshold that triggers resource release (i.e., resource lending).

[0029] In this step, the scheduler determines the business scenario based on the updated load forecast curve, such as nighttime offline peaks and daytime online peaks. The scheduler then dynamically adjusts the upper and lower limits of resource utilization in the two-tier resource pool architecture according to the business scenario. The adjustment is based on the principle that a higher upper limit makes it harder to trigger resource preemption, while a lower lower limit makes it easier to trigger resource release. This adjustment ensures that the upper and lower limits match the business scenario. Finally, the scheduler transmits the adjusted upper and lower limits of resource utilization to the executor.

[0030] Optionally, in practical applications, the same upper limit (or lower limit) of resource utilization can be set for the online resource pool and the offline resource pool, or different upper limits (or lower limits) can be set for the online and offline resource pools; this is not limited here. If different upper limits (or lower limits) of resource utilization are set for the online and offline resource pools, then when the upper limit (or lower limit) of resource utilization is dynamically adjusted, each resource pool should adjust it separately. Furthermore, when determining whether the actual resource utilization exceeds the upper limit or is lower than the lower limit, the determination should be made by each resource pool separately.

[0031] S140. If the actual resource utilization rate of any resource pool in the dual-layer resource pool architecture exceeds the upper limit of resource utilization rate or is lower than the lower limit of resource utilization rate, then resource allocation and balancing are performed on each resource pool in the dual-layer resource pool architecture through the shared buffer.

[0032] In this step, the executor compares the actual resource utilization rate of any resource pool in the two-tier resource pool architecture with its corresponding upper limit. If the actual resource utilization rate exceeds the upper limit, resource preemption is triggered, and redundant resources are borrowed from other resource pools through the shared buffer. The executor also compares the actual resource utilization rate of any resource pool with its corresponding lower limit. If the actual resource utilization rate is lower than the lower limit, resource release is triggered, and redundant resources are lent to other resource pools through the shared buffer. These other resource pools are those in the two-tier resource pool architecture other than any of the aforementioned resource pools.

[0033] The technical solution of this invention involves obtaining a hybrid deployment request that includes online services and offline tasks, generating a load prediction curve based on the hybrid deployment request, and initializing a two-tier resource pool architecture. The two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. Based on real-time load data from the two-tier resource pool architecture, the load prediction curve is periodically updated. According to the updated load prediction curve, the upper and lower limits of resource utilization in the two-tier resource pool architecture are dynamically adjusted. If the actual resource utilization of any resource pool in the two-tier resource pool architecture exceeds the upper limit or falls below the lower limit, resource allocation and balancing are performed on each resource pool in the two-tier resource pool architecture through the shared buffer. This solution constructs a two-layer resource pool architecture that includes an online resource pool, an offline resource pool, and a shared buffer. It dynamically adjusts the upper and lower limits of resource utilization based on load prediction. When the resource utilization of any resource pool exceeds the upper limit or falls below the lower limit, it triggers real-time resource allocation and balancing across resource pools, enabling flexible flow of resources between the online and offline resource pools and improving overall resource utilization.

[0034] In one embodiment, generating a load prediction curve and initializing a two-tier resource pool architecture based on the hybrid deployment request includes: The business request characteristics and historical load data carried by the hybrid deployment request are input into the load prediction model to generate a load prediction curve for a future set period. Based on the load prediction curve, initialize the minimum quota, the elastic quota, the upper limit of resource utilization, and the lower limit of resource utilization in the two-layer resource pool architecture.

[0035] Hybrid deployment requests carry business request characteristics and historical load data. Business request characteristics can be online service SLAs, offline task resource requirements, etc., while historical load data can be load data collected over historical periods, such as historical CPU / GPU / memory usage, etc., without limitation. The business request characteristics and historical load data are input into the load prediction model, which outputs a load prediction curve for a specified future time period. This curve reflects the load situation during the specified future time period, such as the load situation in the next 48 hours.

[0036] Based on the load forecast curve reflecting the load situation in the future set period, the predicted peak and trough values ​​of online and offline loads can be determined; further, the initial upper and lower limits of resource utilization are set so that each resource pool has resources to support it under high load and can release idle resources under low load in the initial stage; further, the initial guaranteed quota, elastic quota and shared buffer capacity are set so as to achieve resource pre-isolation and basic guarantee for online services and offline tasks in the initial stage.

[0037] In one embodiment, dynamically adjusting the upper and lower limits of resource utilization in the two-tier resource pool architecture based on the updated load prediction curve includes: Determine the average load for the corresponding historical time period within the current update cycle; Based on the updated load forecast curve, dynamically adjust the upper limit correction coefficient and the lower limit correction coefficient of resource utilization; The upper limit of resource utilization is dynamically adjusted based on the average load and the upper limit correction coefficient of resource utilization. The lower limit of resource utilization is dynamically adjusted based on the average load and the lower limit correction coefficient of resource utilization.

[0038] Determine the average load for the corresponding historical time period within the current update cycle. That is, within the current update cycle, calculate the average load for the historical time period, such as the past 48 hours, as the benchmark for adjusting the upper and lower limits of resource utilization.

[0039] Based on the updated load forecast curve, the business scenario is determined. Based on the business scenario, the resource utilization upper limit correction coefficient is dynamically adjusted. A larger coefficient results in a higher resource utilization upper limit and a lower likelihood of triggering resource preemption (suitable for scenarios with a high proportion of offline tasks); a smaller coefficient results in a lower resource utilization upper limit and a higher likelihood of triggering preemption (suitable for scenarios sensitive to online services). Based on the business scenario, the resource utilization lower limit correction coefficient is also dynamically adjusted. A larger coefficient results in a lower resource utilization lower limit and a higher likelihood of releasing redundant resources (suitable for periods of low online service load); a smaller coefficient results in a higher resource utilization lower limit and a lower likelihood of releasing redundant resources (suitable for scenarios with large load fluctuations).

[0040] The upper limit of resource utilization rate = average load × (1 + upper limit adjustment coefficient for resource utilization rate). This formula determines the adjusted upper limit of resource utilization rate. The lower limit of resource utilization rate = average load × (1 - lower limit adjustment coefficient for resource utilization rate). This formula determines the adjusted lower limit of resource utilization rate.

[0041] In one embodiment, the upper limit correction coefficient for resource utilization is used to control the upward floating ratio of the upper limit for resource utilization relative to the average load; the lower limit correction coefficient for resource utilization is used to control the downward floating ratio of the lower limit for resource utilization relative to the average load.

[0042] Among them, the upper limit correction coefficient for resource utilization rate is a positive number, usually ranging from 0.1 to 0.3; the lower limit correction coefficient for resource utilization rate is a positive number, usually ranging from 0.2 to 0.4.

[0043] In one embodiment, if the actual resource utilization rate of any resource pool in the two-tier resource pool architecture exceeds the upper limit of resource utilization or falls below the lower limit of resource utilization, then resource allocation and balancing are performed on each resource pool in the two-tier resource pool architecture through the shared buffer, including: If the actual resource utilization rate of any of the resource pools exceeds the upper limit of the resource utilization rate, redundant resources are borrowed from other resource pools through the shared buffer; the other resource pools are the resource pools in the two-layer resource pool architecture other than any of the resource pools. If the actual resource utilization rate of any resource pool is lower than the lower limit of resource utilization, the redundant resources of any resource pool will be released back to the shared buffer for borrowing by other resource pools.

[0044] In other words, when the actual resource utilization rate of any resource pool in the two-tier resource pool architecture exceeds the preset resource utilization limit, it indicates that the current resource pool is insufficient and cannot meet the business load requirements. At this time, redundant resources can be borrowed from other resource pools outside of this resource pool through a shared buffer to supplement the resource supply of the current resource pool and ensure normal business operation. For example, during a sudden surge in online service traffic, redundant resources from the offline resource pool can be borrowed to the online resource pool through the shared buffer.

[0045] When the actual resource utilization rate of any resource pool in the two-tier resource pool architecture falls below the preset lower limit, it indicates that the resource pool currently has idle redundant resources. At this time, the redundant resources in that resource pool can be released to the shared buffer, which manages them centrally for scheduling and use when other resource pools experience resource shortages. For example, when online services are under low load in the early morning, redundant resources from the online resource pool can be released to the shared buffer, making it easier for the offline resource pool to access them during peak offline task periods at night.

[0046] In one embodiment, any one of the resource pools is the online resource pool, and the other resource pools are the offline resource pools; borrowing redundant resources from other resource pools through the shared buffer includes: Resource reclamation is performed on the offline resource pool through the shared buffer, and the reclaimed resources are borrowed as redundant resources to the online resource pool; the resource reclamation is implemented based on the offline task priority in the offline resource pool.

[0047] When the online resource pool is insufficient and resource scheduling is required through the shared buffer, a resource reclamation operation is performed on the offline resource pool through the shared buffer. Resources occupied by low-priority offline tasks are reclaimed first, and the reclaimed resources are borrowed to the online resource pool as redundant resources to meet the resource needs of online services, ensure the service quality and operational stability of online services, and at the same time ensure the normal execution of high-priority offline tasks.

[0048] The technical solution of this invention decouples the guaranteed quota for online services from the elastic quota for offline tasks through a two-layer resource pool dynamic partitioning mechanism. Combined with the resource transfer capability of the shared buffer, it eliminates the low utilization problem caused by resource fragmentation in traditional architectures. Through periodic load prediction and dynamic adjustment of upper and lower limits of resource utilization, it anticipates resource demand in advance and completes resource transfer, significantly optimizing scheduling latency. It allocates high-priority quotas to online services and low-priority quotas to offline tasks, ensuring that critical business operations are not interfered with.

[0049] Example 2 Figure 3 This is a schematic diagram of a hybrid deployment resource scheduling device according to Embodiment 2 of the present invention. This embodiment is applicable to situations where hybrid deployment resource scheduling is implemented, such as... Figure 3 As shown, the specific structure of the device includes: The first processing module 31 is used to obtain a mixed deployment request that includes online services and offline tasks, generate a load prediction curve based on the mixed deployment request, and initialize a two-layer resource pool architecture; the two-layer resource pool architecture includes an online resource pool with a minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. The second processing module 32 is used to periodically update the load prediction curve based on the real-time load data of the two-layer resource pool architecture. The third processing module 33 is used to dynamically adjust the upper limit and lower limit of resource utilization in the two-layer resource pool architecture according to the updated load prediction curve. The fourth processing module 34 is used to perform resource allocation and balancing on each resource pool in the dual-layer resource pool architecture through the shared buffer if the actual resource utilization rate of any resource pool in the dual-layer resource pool architecture exceeds the upper limit of resource utilization or is lower than the lower limit of resource utilization.

[0050] The hybrid deployment resource scheduling device provided in this embodiment obtains a hybrid deployment request containing online services and offline tasks through a first processing module, generates a load prediction curve based on the hybrid deployment request, and initializes a two-tier resource pool architecture. The two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. A second processing module periodically updates the load prediction curve based on real-time load data of the two-tier resource pool architecture. A third processing module dynamically adjusts the upper and lower limits of resource utilization in the two-tier resource pool architecture based on the updated load prediction curve. A fourth processing module performs resource allocation and balancing on each resource pool in the two-tier resource pool architecture through the shared buffer if the actual resource utilization of any resource pool in the two-tier resource pool architecture exceeds the upper limit or falls below the lower limit. This solution constructs a two-layer resource pool architecture that includes an online resource pool, an offline resource pool, and a shared buffer. It dynamically adjusts the upper and lower limits of resource utilization based on load prediction. When the resource utilization of any resource pool exceeds the upper limit or falls below the lower limit, it triggers real-time resource allocation and balancing across resource pools, enabling flexible flow of resources between the online and offline resource pools and improving overall resource utilization.

[0051] Furthermore, the first processing module 31 is specifically used for: The business request characteristics and historical load data carried by the hybrid deployment request are input into the load prediction model to generate a load prediction curve for a future set period. Based on the load prediction curve, initialize the minimum quota, the elastic quota, the upper limit of resource utilization, and the lower limit of resource utilization in the two-layer resource pool architecture.

[0052] Furthermore, the third processing module 33 is specifically used for: Determine the average load for the corresponding historical time period within the current update cycle; Based on the updated load forecast curve, dynamically adjust the upper limit correction coefficient and the lower limit correction coefficient of resource utilization; The upper limit of resource utilization is dynamically adjusted based on the average load and the upper limit correction coefficient of resource utilization. The lower limit of resource utilization is dynamically adjusted based on the average load and the lower limit correction coefficient of resource utilization.

[0053] Furthermore, the resource utilization rate upper limit correction coefficient is used to control the upward floating ratio of the resource utilization rate upper limit relative to the average load; The resource utilization rate lower limit correction coefficient is used to control the downward floating ratio of the resource utilization rate lower limit relative to the average load.

[0054] Furthermore, the fourth processing module 34 is specifically used for: If the actual resource utilization rate of any of the resource pools exceeds the upper limit of the resource utilization rate, redundant resources are borrowed from other resource pools through the shared buffer; the other resource pools are the resource pools in the two-layer resource pool architecture other than any of the resource pools. If the actual resource utilization rate of any resource pool is lower than the lower limit of resource utilization, the redundant resources of any resource pool will be released back to the shared buffer for borrowing by other resource pools.

[0055] Furthermore, any one of the resource pools is the online resource pool, and the other resource pools are the offline resource pools; borrowing redundant resources from other resource pools through the shared buffer includes: Resource reclamation is performed on the offline resource pool through the shared buffer, and the reclaimed resources are borrowed as redundant resources to the online resource pool; the resource reclamation is implemented based on the offline task priority in the offline resource pool.

[0056] The hybrid deployment resource scheduling device provided in this embodiment of the invention can execute the hybrid deployment resource scheduling method provided in any embodiment of the invention, and has the corresponding functional modules and beneficial effects of the method execution.

[0057] Example 3 Figure 4 This is a schematic diagram of the structure of an electronic device implementing embodiments of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0058] like Figure 4 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 performs various appropriate actions and processes based on the computer programs stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 may also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0059] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0060] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as hybrid deployment resource scheduling methods.

[0061] In some embodiments, the hybrid deployment resource scheduling method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the hybrid deployment resource scheduling method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the hybrid deployment resource scheduling method by any other suitable means (e.g., by means of firmware).

[0062] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0063] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0064] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0065] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0066] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0067] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.

[0068] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0069] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A hybrid deployment resource scheduling method, characterized in that, include: Obtain a mixed deployment request that includes online services and offline tasks, generate a load prediction curve based on the mixed deployment request, and initialize a two-tier resource pool architecture; The two-tier resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. Based on the real-time load data of the aforementioned two-layer resource pool architecture, the load prediction curve is periodically updated. Based on the updated load prediction curve, dynamically adjust the upper and lower limits of resource utilization in the two-tier resource pool architecture; If the actual resource utilization rate of any resource pool in the two-layer resource pool architecture exceeds the upper limit of resource utilization or falls below the lower limit of resource utilization, then the shared buffer is used to allocate and balance resources among the resource pools in the two-layer resource pool architecture.

2. The method according to claim 1, characterized in that, Generate a load prediction curve based on the hybrid deployment request and initialize a two-tier resource pool architecture, including: The business request characteristics and historical load data carried by the hybrid deployment request are input into the load prediction model to generate a load prediction curve for a future set period. Based on the load prediction curve, initialize the minimum quota, the elastic quota, the upper limit of resource utilization, and the lower limit of resource utilization in the two-layer resource pool architecture.

3. The method according to claim 1, characterized in that, Based on the updated load prediction curve, dynamically adjust the upper and lower limits of resource utilization in the two-tier resource pool architecture, including: Determine the average load for the corresponding historical time period within the current update cycle; Based on the updated load forecast curve, dynamically adjust the upper limit correction coefficient and the lower limit correction coefficient of resource utilization; The upper limit of resource utilization is dynamically adjusted based on the average load and the upper limit correction coefficient of resource utilization. The lower limit of resource utilization is dynamically adjusted based on the average load and the lower limit correction coefficient of resource utilization.

4. The method according to claim 3, characterized in that, The resource utilization rate upper limit correction coefficient is used to control the upward floating ratio of the resource utilization rate upper limit relative to the average load; The resource utilization rate lower limit correction coefficient is used to control the downward floating ratio of the resource utilization rate lower limit relative to the average load.

5. The method according to claim 1, characterized in that, If the actual resource utilization rate of any resource pool in the two-tier resource pool architecture exceeds the upper limit of resource utilization or falls below the lower limit of resource utilization, then resource allocation and balancing are performed on each resource pool in the two-tier resource pool architecture through the shared buffer, including: If the actual resource utilization rate of any of the resource pools exceeds the upper limit of the resource utilization rate, redundant resources are borrowed from other resource pools through the shared buffer; the other resource pools are the resource pools in the two-layer resource pool architecture other than any of the resource pools. If the actual resource utilization rate of any resource pool is lower than the lower limit of resource utilization, the redundant resources of any resource pool will be released back to the shared buffer for borrowing by other resource pools.

6. The method according to claim 5, characterized in that, The resource pool is the online resource pool, and the other resource pools are the offline resource pools; borrowing redundant resources from other resource pools through the shared buffer includes: Resource reclamation is performed on the offline resource pool through the shared buffer, and the reclaimed resources are borrowed as redundant resources to the online resource pool; the resource reclamation is implemented based on the offline task priority in the offline resource pool.

7. A hybrid deployment resource scheduling device, characterized in that, include: The first processing module is used to obtain a mixed deployment request containing online services and offline tasks, generate a load prediction curve based on the mixed deployment request, and initialize a two-layer resource pool architecture. The two-layer resource pool architecture includes an online resource pool with a guaranteed minimum quota, an offline resource pool with an elastic quota, and a shared buffer for resource transfer between pools. The second processing module is used to periodically update the load prediction curve based on the real-time load data of the two-layer resource pool architecture. The third processing module is used to dynamically adjust the upper limit and lower limit of resource utilization in the two-layer resource pool architecture according to the updated load prediction curve. The fourth processing module is used to perform resource allocation and balancing on each resource pool in the dual-layer resource pool architecture through the shared buffer if the actual resource utilization rate of any resource pool in the dual-layer resource pool architecture exceeds the upper limit of resource utilization or falls below the lower limit of resource utilization.

8. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the method as described in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the method as described in any one of claims 1-6.

10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the method as described in any one of claims 1-6.