Resource scheduling method, electronic device, storage medium, and program

By allocating tasks to dedicated or general resource clusters based on task priority, the problem of insufficient resource isolation is solved, enabling orderly task execution and efficient resource utilization, thereby improving the stability and efficiency of the computer system.

CN122111666APending Publication Date: 2026-05-29INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
INDUSTRIAL AND COMMERCIAL BANK OF CHINA
Filing Date
2026-02-12
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

The existing resource scheduling scheme lacks sufficient resource isolation. When high-priority cluster tasks suddenly occur, low-priority cluster tasks are continuously preempted because they completely share physical resources with high-priority cluster tasks, resulting in execution delays and operational instability.

Method used

By determining the task priority of the target task and allocating it to a dedicated resource cluster or a general resource cluster according to the priority, idle cluster resources are scheduled to execute the task, hardware-level isolation is established to ensure the resource exclusivity of high-priority tasks, and resource utilization is optimized through resource scheduling adjustment strategies.

Benefits of technology

Effective resource isolation was achieved, ensuring the orderly execution of tasks with different priorities, improving resource utilization and task execution efficiency, and reducing delays and interruptions caused by resource contention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122111666A_ABST
    Figure CN122111666A_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a resource scheduling method, an electronic device, a storage medium and a program, and relate to the field of computer application and financial technology. The method comprises: determining a task priority of a target task; determining a target resource cluster for executing the target task according to the task priority of the target task; wherein the target resource cluster comprises a dedicated resource cluster or a general resource cluster; and scheduling idle cluster resources included in the target resource cluster for executing the target task. The technical scheme of the embodiments of the present application can realize effective isolation of resources, thereby guaranteeing the orderly execution of tasks with different priorities.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the fields of computer applications and financial technology, and particularly to a resource scheduling method, electronic device, storage medium and program. Background Technology

[0002] With the rapid development of technologies such as cloud computing, big data, artificial intelligence, and edge computing, the application scenarios of computer systems are becoming increasingly complex. The core resources of computer systems, including computing resources, storage resources, and network resources, exhibit both exponential growth and dynamic fluctuations in demand. The contradiction between the limited nature of resources and the diversity and complexity of application needs is becoming increasingly prominent, making resource scheduling a core supporting technology for the efficient operation of computer systems.

[0003] Existing resource scheduling schemes primarily rely on priority queue scheduling, which assigns numerical priority tags to tasks. The scheduler determines the execution order based on priority, allowing high-priority cluster tasks to preempt resources from low-priority cluster tasks. However, existing resource scheduling schemes lack sufficient resource isolation. When high-priority cluster tasks experience a surge in activity, low-priority cluster tasks are continuously preempted because they share physical resources with high-priority cluster tasks. Summary of the Invention

[0004] This invention provides a resource scheduling method, apparatus, electronic device, storage medium, and program that can effectively isolate resources and thus ensure the orderly execution of tasks with different priorities.

[0005] According to one aspect of the present invention, a resource scheduling method is provided, comprising: Determine the task priority for the target task; The target resource cluster for executing the target task is determined based on the task priority of the target task; wherein, the target resource cluster includes a dedicated resource cluster or a general resource cluster; The idle cluster resources included in the target resource cluster are scheduled to execute the target task.

[0006] According to another aspect of the present invention, a resource scheduling apparatus is provided, comprising: The task priority determination module is used to determine the task priority of the target task; The target resource cluster determination module is used to determine the target resource cluster for executing the target task based on the task priority of the target task; wherein, the target resource cluster includes a dedicated resource cluster or a general resource cluster; The task execution module is used to schedule idle cluster resources included in the target resource cluster to execute the target task.

[0007] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: 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, the computer program being executed by the at least one processor to enable the at least one processor to perform the resource scheduling method according to any embodiment of the present invention.

[0008] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the resource scheduling method described in any embodiment of the present invention.

[0009] According to another aspect of the present invention, a computer program product is also provided, comprising a computer program that, when executed by a processor, implements the resource scheduling method described in any embodiment of the present invention.

[0010] This invention determines the task priority of a target task and, based on that priority, identifies the target resource cluster for executing the target task as either a dedicated resource cluster or a general-purpose resource cluster. After determining the target resource cluster, idle cluster resources within that cluster are scheduled to execute the target task. This solution addresses the deficiency of insufficient resource isolation in existing resource scheduling schemes, achieving effective resource isolation and ensuring the orderly execution of tasks with different priorities.

[0011] 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

[0012] 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.

[0013] Figure 1 This is a flowchart of a resource scheduling method provided in Embodiment 1 of the present invention; Figure 2 This is a schematic diagram of a resource scheduling device provided in Embodiment 2 of the present invention; Figure 3 This is a schematic diagram of the structure of an electronic device provided in Embodiment 3 of the present invention. Detailed Implementation

[0014] 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.

[0015] It should be noted that the terms "first," "second," "specific," and "general," etc., used in the specification, claims, and accompanying drawings of 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 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.

[0016] Example 1 Figure 1 This is a flowchart of a resource scheduling method provided in Embodiment 1 of the present invention. This embodiment is applicable to situations where dedicated resource clusters and general resource clusters are used to execute tasks of different priorities. The method can be executed by a resource scheduling device, which can be implemented in software and / or hardware, and is generally integrated into an electronic device. This electronic device can be a terminal device or a server device, as long as it can execute the resource scheduling method. The present invention does not limit the specific type of electronic device. Correspondingly, as... Figure 1 As shown, the method includes the following operations: S110. Determine the task priority of the target task.

[0017] The target task can be a task to be executed in the target business system. For example, the target task can be a real-time clearing task in a financial transaction system, a file synchronization task in an office collaboration platform, or a batch data export task for non-core business operations. This embodiment of the invention does not limit the specific type of the target task.

[0018] In this embodiment of the invention, to achieve efficient scheduling and reasonable allocation of various core resources such as computing, storage, and network within the target business system, any task in the target business system that is in a pending execution state can first be designated as the target task to be scheduled. Based on this, the priority level of the target task can be determined according to a preset priority classification rule, combined with key dimensions such as the target task's business attributes, execution time requirements, and resource demand characteristics.

[0019] In an optional embodiment of the present invention, before determining the task priority of the target task, the method may further include: dividing the overall resource cluster into the dedicated resource cluster and the general resource cluster according to the resource allocation ratio of the dedicated resource cluster or the general resource cluster based on the resource capacity of the overall resource cluster; and performing cluster isolation processing on the dedicated resource cluster and the general resource cluster.

[0020] The overall resource cluster's resource capacity can be the sum of the maximum available capacity of all core computing resources physically provided by the entire computing resource cluster upon which the target business system relies. The overall resource cluster may include, but is not limited to, server resources, CPU (Central Processing Unit) computing resources, storage resources, and network resources within the target business system. This embodiment of the invention does not limit the specific resource types included in the overall resource cluster. The resource allocation ratio can be the proportion of the overall resource cluster allocated to dedicated resource clusters or general-purpose resource clusters according to preset rules. Dedicated resource clusters can be resource clusters used to execute high-priority cluster tasks, while general-purpose resource clusters can be resource clusters used to execute medium-priority and low-priority cluster tasks.

[0021] In this embodiment of the invention, before executing a task, the target business system can divide the overall resource cluster into a dedicated resource cluster and a general resource cluster according to a preset resource allocation ratio based on the limited overall resource cluster capacity. For example, 30%-40% of the overall resource cluster capacity can be pre-allocated to the dedicated resource cluster specifically for executing high-priority cluster tasks; 60%-70% of the overall resource cluster capacity can be pre-allocated to the general resource cluster for executing medium-priority and low-priority cluster tasks. Furthermore, a hardware-level isolation barrier can be established between the dedicated and general resource clusters to prevent cross-cluster resource preemption, fundamentally ensuring the resource exclusivity of high-priority cluster tasks. Simultaneously, relying on the differentiated resource allocation strategy between the dedicated and general resource clusters, refined management of the overall cluster resources is achieved, significantly improving the overall utilization efficiency of cluster resources.

[0022] Optionally, a minimum resource guarantee mechanism can be configured for each high-priority cluster task in the dedicated resource cluster, reserving basic resources of a preset specification for each high-priority cluster task. For example, basic resources of 2 CPU cores and 4GB of memory can be reserved for each high-priority cluster task. At the same time, a real-time monitoring channel for the resource running status can be started for each high-priority cluster task. When the response latency of a high-priority cluster task is detected to exceed a preset threshold of 200ms, an automatic expansion operation can be performed on the resource allocation corresponding to the task, thereby effectively reducing the impact of task interruption and ensuring the continuity of task execution.

[0023] Optionally, the resources of the general resource cluster can be weighted according to task priority. Resources in the general resource cluster with a first preset weight can be allocated to the execution links of medium-priority cluster tasks, and resources in the general resource cluster with a second preset weight can be allocated to the execution links of low-priority cluster tasks. For example, the first preset weight can be 60%, and the second preset weight can be 40%. This embodiment of the invention does not limit the specific values ​​of the first and second preset weights.

[0024] S120. Determine the target resource cluster for executing the target task based on the task priority of the target task; wherein, the target resource cluster includes a dedicated resource cluster or a general resource cluster.

[0025] Specifically, after determining the task priority of the target task, the target resource cluster for executing the target task can be determined based on the task priority of the target task.

[0026] In an optional embodiment of the present invention, determining the target resource cluster for executing the target task based on the task priority of the target task may include: if the task priority of the target task is determined to be high priority, determining the target resource cluster for executing the target task as the dedicated resource cluster; if the task priority of the target task is determined to be medium priority or low priority, determining the target resource cluster for executing the target task as the general resource cluster.

[0027] In this embodiment of the invention, if the task priority of the target task is high priority, the high priority cluster task can be executed using a dedicated resource cluster, that is, the dedicated resource cluster is used as the target resource cluster for executing the target task; if the task priority of the target task is medium priority or low priority, the medium priority cluster task or low priority cluster task can be executed using a general resource cluster, that is, the general resource cluster is used as the target resource cluster for executing the target task.

[0028] The above solution allocates a dedicated resource cluster as an exclusive execution carrier for high-priority cluster tasks. This dedicated resource cluster only carries high-priority cluster tasks and does not bear the execution load of medium and low-priority cluster tasks. This fundamentally avoids the resource competition problem between high-priority cluster tasks and other priority tasks, and effectively prevents adverse situations such as task execution delays, running lag, or even execution interruptions caused by resource contention.

[0029] Optionally, if the task priority of the target task is greater than or equal to a first preset priority threshold, then the task priority of the target task is determined to be high priority; if the task priority of the target task is less than the first preset priority threshold, and the task priority of the target task is greater than or equal to a second preset priority threshold, then the task priority of the target task is determined to be medium priority; if the task priority of the target task is less than the second preset priority threshold, then the task priority of the target task is determined to be low priority. For example, the first preset priority threshold can be 80, and the second preset priority threshold can be 50. This embodiment of the invention does not limit the specific values ​​of the first and second preset priority thresholds.

[0030] S130. Schedule the idle cluster resources included in the target resource cluster to execute the target task.

[0031] Idle cluster resources can refer to all kinds of hardware and logical resources in the target resource cluster that have been initialized and deployed and are available, but have not been assigned to any task execution process and are currently not occupied by actual business load.

[0032] Specifically, after determining the target resource cluster for executing the target task based on the task priority of the target task, the target business system can perform resource status detection and idle resource matching on the selected target resource cluster. It can accurately identify the idle cluster resources in the target resource cluster that are available and not occupied by any task load, and complete the scheduling and allocation of these idle cluster resources according to the resource execution requirements of the target task. Finally, it calls on these allocated idle cluster resources to carry out and execute the corresponding target task, ensuring that the target task starts and runs efficiently in the matched resource environment.

[0033] Therefore, the resource scheduling method provided in this embodiment of the invention determines the target resource cluster for executing the target task based on the task priority of the target task, enabling precise matching and scheduling of resources and tasks. This method constructs a differentiated resource allocation system guided by task priority at the architectural level, fundamentally avoiding resource competition between tasks with different priorities, thereby improving the execution efficiency, real-time performance, and operational stability of core tasks. Simultaneously, this solution can schedule various tasks to suitable resource carriers for execution, enabling refined management and hierarchical utilization of overall cluster resources, effectively improving the overall resource utilization rate of the cluster, and significantly reducing resource idleness and waste.

[0034] In an optional embodiment of the present invention, the method may further include: determining the current cluster resource utilization rate of each resource cluster; and determining the resource scheduling adjustment strategy of each resource cluster based on the current cluster resource utilization rate of the resource cluster or the execution status of the overall cluster tasks within the resource cluster.

[0035] The current cluster resource utilization rate can be the ratio between the actual usage of various resources in each resource cluster and the total available capacity at the current moment. The execution status of the overall cluster task can be defined according to the task lifecycle stage and task execution health of each cluster task. For example, the execution status of the overall cluster task can include, but is not limited to, timeout waiting status, normal execution status, normal queuing waiting status, and abnormal execution status. This embodiment of the invention does not limit the specific type of execution status of the overall cluster task. The resource scheduling and adjustment strategy can be a set of rules and schemes for the target business system to re-plan, allocate, and optimize allocated or pending resources.

[0036] In this embodiment of the invention, the target business system can monitor the current cluster resource utilization rate of each resource cluster in real time throughout the entire task execution process. At the same time, it can synchronously monitor and collect data on the overall execution status of the cluster tasks within each resource cluster. Then, based on the current cluster resource utilization rate or the overall execution status of the cluster tasks within the resource cluster, the resource scheduling and adjustment strategy of each resource cluster can be determined. This ensures that the resource scheduling and adjustment strategy is highly matched with the actual operating needs of each cluster, greatly improving the accuracy and adaptability of resource scheduling, and thus improving the utilization rate of cluster resources.

[0037] In an optional embodiment of the present invention, determining the resource scheduling and adjustment strategy for each resource cluster based on the current cluster resource utilization rate of the resource cluster and the execution status of the overall cluster tasks within the resource cluster may include: when it is determined that the current cluster resource utilization rate of the dedicated resource cluster is less than or equal to a first resource utilization rate threshold, transferring the target idle resources in the dedicated resource cluster to the general resource cluster to execute medium-priority cluster tasks; and when it is determined that the current cluster resource utilization rate of the dedicated resource cluster is greater than a second resource utilization rate threshold, triggering a resource reclamation process for the dedicated resource cluster.

[0038] The first resource utilization threshold can be a pre-set threshold for resource utilization. The second resource utilization threshold can be another pre-set threshold for resource utilization. For example, the first resource utilization threshold can be 40%, and the second resource utilization threshold can be 85%. This embodiment of the invention does not determine the specific values ​​of the first and second resource utilization thresholds. The target idle resource can be a preset proportion of idle resources in the dedicated resource cluster.

[0039] In this embodiment of the invention, when determining the resource scheduling and adjustment strategy for each resource cluster based on the current cluster resource utilization rate of the source cluster and the overall execution status of cluster tasks within the resource cluster, if the current cluster resource utilization rate of the dedicated resource cluster is less than or equal to a first resource utilization rate threshold for a given period of time, such as within 5 minutes, then the target idle resources in the dedicated resource cluster can be transferred to the general resource cluster to execute medium-priority cluster tasks. For example, 50% of the idle resources in the dedicated resource cluster can be allocated to the general resource cluster, thereby achieving cross-cluster reuse of idle resources. If the current cluster resource utilization rate of the dedicated resource cluster is greater than a second resource utilization rate threshold, then the dedicated resource cluster's recycling process can be initiated immediately to ensure the resource supply and smooth execution of high-priority cluster tasks within the dedicated resource cluster.

[0040] In an optional embodiment of the present invention, the process of triggering the resource reclamation of the dedicated resource cluster may include: sending a resource reclamation instruction to the general resource cluster; performing a state snapshot saving operation on the target cluster task in the general resource cluster and adding the target cluster task to the breakpoint resume queue; reclaiming the target idle resource to the dedicated resource cluster and calling the spare resource to the dedicated resource cluster to execute high-priority cluster tasks.

[0041] The resource reclamation command can be issued to a general resource cluster to reclaim target idle resources lent to a dedicated resource cluster. The target cluster task can be a cluster task executed within the general resource cluster using the target idle resources. The breakpoint resume queue can be an ordered set of tasks in the target business system specifically used to manage interrupted tasks awaiting recovery. Reserved resources can be resources reserved in the target business system. Reserved resources do not participate in the resource scheduling and use of regular business operations. High-priority cluster tasks can be high-priority tasks in the dedicated resource cluster.

[0042] In this embodiment of the invention, when the resource reclamation process of the dedicated resource cluster is triggered, a two-stage resource release strategy can be adopted to perform the resource reclamation operation. First, the various borrowing resource tasks corresponding to the dedicated resource cluster lending resources to the general resource cluster are terminated, and then the resource pool of the dedicated resource cluster is shrinked.

[0043] Specifically, firstly, a resource reclamation command with a 30-second buffer period can be issued to the general resource cluster to reserve task processing buffer time for the general resource cluster. Secondly, a full snapshot can be performed on the target cluster tasks in the general resource cluster that rely on the target idle resources. This snapshot fully records the current execution status, data transmission nodes, and core information such as running parameters of the target cluster tasks. After the snapshot is saved, the target cluster task can be added to the breakpoint resume queue. When the conditions for resumption are met, it can be resumed based on the snapshot information to ensure the continuous execution of the target cluster tasks. Based on this, the aforementioned target idle resources can be reclaimed from the general resource cluster to the dedicated resource cluster, and the reclaimed target idle resources can be scheduled to the high-priority cluster task execution chain of the dedicated resource cluster to provide resource support for high-priority cluster tasks. If, after the dedicated resource cluster completes the reclamation of the target idle resources, the overall resource utilization rate of the current cluster is still within the preset high utilization threshold range, spare resources can be called and scheduled to the dedicated resource cluster to supplement the resource allocation pool of high-priority cluster tasks, ensuring the efficient execution of high-priority cluster tasks.

[0044] In an optional embodiment of the present invention, determining the resource scheduling adjustment strategy for each resource cluster based on the current cluster resource utilization rate or the execution status of the overall cluster tasks within the resource cluster may include: increasing the task priority of the target priority task when the execution status of the target priority task corresponding to the general resource cluster meets the resource scheduling adjustment conditions; and calling on the spare resources to the general resource cluster to execute the target priority task.

[0045] The target priority task can be a medium-priority cluster task or a low-priority cluster task in the general resource pool. The resource scheduling adjustment condition can be a condition that triggers resource scheduling in the general resource cluster.

[0046] In this embodiment of the invention, when determining the resource scheduling adjustment strategy for each resource cluster based on the current cluster resource utilization rate or the overall cluster task execution status within the resource cluster, the target business system can monitor the execution status of the target priority tasks executed by the general resource cluster in real time. If the execution status of the target priority task executed by the general resource cluster meets the resource scheduling adjustment conditions, the task priority of the target priority task can be automatically increased. Optionally, the resource scheduling adjustment conditions may include, but are not limited to, the execution status of the target priority task being timed out, etc. This embodiment of the invention does not limit the specific content of the resource scheduling adjustment conditions. While performing the above task priority increase operation, the target business system can also call on backup resources and schedule them to the general resource cluster to provide dedicated resource support for the target priority task after priority increase, ensuring the efficient execution of the target priority task and effectively reducing the probability of task starvation in existing resource scheduling schemes.

[0047] In a specific example, when a target priority task is detected to be in a timeout waiting state, its priority can be increased by 20 units. It must be clarified that the increased priority value must not exceed a first preset priority threshold. For instance, if the waiting time for a target priority task exceeds one hour, it can be considered to be in a timeout waiting state.

[0048] This invention determines the task priority of a target task and, based on that priority, identifies the target resource cluster for executing the target task as either a dedicated resource cluster or a general-purpose resource cluster. After determining the target resource cluster, idle cluster resources within that cluster are scheduled to execute the target task. This solution addresses the deficiency of insufficient resource isolation in existing resource scheduling schemes, achieving effective resource isolation and ensuring the orderly execution of tasks with different priorities.

[0049] In the technical solution disclosed herein, the information collected is information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data all comply with the relevant laws, regulations and standards of the relevant countries and regions, necessary confidentiality measures have been taken, and they do not violate public order and good morals. Corresponding operation entry points are provided for users to choose to authorize or refuse.

[0050] It should be noted that, in this embodiment of the invention, a corresponding operation entry can be provided to the user, allowing the user to choose to agree to or reject the automated decision result; if the user chooses to reject, the process will proceed to the expert decision-making process.

[0051] It should be noted that any arrangement or combination of the technical features in the above embodiments also falls within the protection scope of this invention.

[0052] Example 2 Figure 2 This is a schematic diagram of a resource scheduling device provided in Embodiment 2 of the present invention, as shown below. Figure 2 As shown, the device includes: a task priority determination module 210, a target resource cluster determination module 220, and a task execution module 230, wherein: Task priority determination module 210 is used to determine the task priority of the target task.

[0053] The target resource cluster determination module 220 is used to determine the target resource cluster for executing the target task based on the task priority of the target task; wherein, the target resource cluster includes a dedicated resource cluster or a general resource cluster.

[0054] The task execution module 230 is used to schedule the idle cluster resources included in the target resource cluster to execute the target task.

[0055] This invention determines the task priority of a target task and, based on that priority, identifies the target resource cluster for executing the target task as either a dedicated resource cluster or a general-purpose resource cluster. After determining the target resource cluster, idle cluster resources within that cluster are scheduled to execute the target task. This solution addresses the deficiency of insufficient resource isolation in existing resource scheduling schemes, achieving effective resource isolation and ensuring the orderly execution of tasks with different priorities.

[0056] Optionally, the above-mentioned device may further include a resource allocation module, used to divide the overall resource cluster into the dedicated resource cluster and the general resource cluster according to the resource allocation ratio of the dedicated resource cluster or the general resource cluster based on the resource capacity of the overall resource cluster; and to perform cluster isolation processing on the dedicated resource cluster and the general resource cluster.

[0057] Optionally, the target resource cluster determination module 220 is specifically used to: determine the target resource cluster executing the target task as the dedicated resource cluster when the task priority of the target task is determined to be high priority; and determine the target resource cluster executing the target task as the general resource cluster when the task priority of the target task is determined to be medium priority or low priority.

[0058] Optionally, the above-mentioned device may further include a resource scheduling adjustment strategy determination module, used to determine the current cluster resource utilization rate of each resource cluster; and to determine the resource scheduling adjustment strategy of each resource cluster based on the current cluster resource utilization rate of the resource cluster or the execution status of the overall cluster tasks within the resource cluster.

[0059] Optionally, the resource scheduling adjustment strategy determination module is specifically used to: when it is determined that the current cluster resource utilization rate of the dedicated resource cluster is less than or equal to a first resource utilization rate threshold, call the target idle resources in the dedicated resource cluster to the general resource cluster to execute medium-priority cluster tasks; when it is determined that the current cluster resource utilization rate of the dedicated resource cluster is greater than a second resource utilization rate threshold, trigger the resource reclamation process of the dedicated resource cluster.

[0060] Optionally, the resource scheduling adjustment strategy determination module is further configured to: send a resource reclamation instruction to the general resource cluster; perform a status snapshot saving operation on the target cluster task in the general resource cluster and add the target cluster task to the breakpoint resume queue; reclaim the target idle resources to the dedicated resource cluster and call the spare resources to the dedicated resource cluster to execute high-priority cluster tasks.

[0061] Optionally, if it is determined that the execution status of the target priority task corresponding to the general resource cluster meets the resource scheduling adjustment conditions, the task priority of the target priority task is increased; and spare resources are called to the general resource cluster to execute the target priority task.

[0062] The resource scheduling device described above can execute the resource scheduling method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the method. Technical details not described in detail in this embodiment can be found in the resource scheduling method provided in any embodiment of the present invention.

[0063] Since the resource scheduling device described above is an apparatus capable of executing the resource scheduling method in the embodiments of the present invention, those skilled in the art can understand the specific implementation methods and various variations of the resource scheduling device in this embodiment based on the resource scheduling method described in the embodiments of the present invention. Therefore, how the resource scheduling device implements the resource scheduling method in the embodiments of the present invention will not be described in detail here. Any apparatus used by those skilled in the art to implement the resource scheduling method in the embodiments of the present invention falls within the scope of protection of this application.

[0064] Example 3 Figure 3A schematic diagram of an electronic device 10, which can be used to implement embodiments of the present invention, is shown. 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 electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. 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.

[0065] like Figure 3 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 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can 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.

[0066] 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.

[0067] 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, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as resource scheduling methods.

[0068] In some embodiments, the 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 resource scheduling method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the resource scheduling method by any other suitable means (e.g., by means of firmware).

[0069] Optionally, the resource scheduling method may include: determining the task priority of a target task; determining a target resource cluster for executing the target task based on the task priority of the target task; wherein the target resource cluster includes a dedicated resource cluster or a general resource cluster; and scheduling idle cluster resources included in the target resource cluster for executing the target task.

[0070] 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.

[0071] 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.

[0072] 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.

[0073] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); 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).

[0074] 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.

[0075] 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.

[0076] This application also discloses a computer program product, which includes a computer program that, when executed by a processor, implements the resource scheduling method provided in any embodiment of this application. This program product shares the same inventive concept as the resource scheduling methods disclosed in the embodiments of this application, and therefore will not be described in detail here.

[0077] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0078] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. 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 disclosure should be included within the scope of protection of this disclosure.

Claims

1. A resource scheduling method, characterized in that, include: Determine the task priority for the target task; The target resource cluster for executing the target task is determined based on the task priority of the target task; wherein, the target resource cluster includes a dedicated resource cluster or a general resource cluster; The idle cluster resources included in the target resource cluster are scheduled to execute the target task.

2. The method according to claim 1, characterized in that, Before determining the task priority of the target task, the following is also included: Based on the overall resource cluster's resource capacity, and according to the resource allocation ratio of the dedicated resource cluster or the general resource cluster, the overall resource cluster is divided into the dedicated resource cluster and the general resource cluster. Cluster isolation processing is performed on the dedicated resource cluster and the general resource cluster.

3. The method according to claim 1, characterized in that, The step of determining the target resource cluster for executing the target task based on the task priority of the target task includes: If the task priority of the target task is determined to be high priority, the target resource cluster for executing the target task is determined to be the dedicated resource cluster; If the task priority of the target task is determined to be medium or low priority, the target resource cluster for executing the target task is determined to be the general resource cluster.

4. The method according to claim 1, characterized in that, The method further includes: Determine the current cluster resource utilization rate for each resource cluster; The resource scheduling and adjustment strategy for each resource cluster is determined based on the current cluster resource utilization rate or the overall cluster task execution status within the resource cluster.

5. The method according to claim 4, characterized in that, The step of determining the resource scheduling and adjustment strategy for each resource cluster based on the current cluster resource utilization rate and the overall cluster task execution status within the resource cluster includes: If the current cluster resource utilization rate of the dedicated resource cluster is determined to be less than or equal to the first resource utilization rate threshold, the target idle resources in the dedicated resource cluster are called to the general resource cluster to execute medium-priority cluster tasks. If the current cluster resource utilization rate of the dedicated resource cluster is determined to be greater than the second resource utilization rate threshold, the resource reclamation process of the dedicated resource cluster is triggered.

6. The method according to claim 5, characterized in that, The resource reclamation process that triggers the dedicated resource cluster includes: Send a resource reclamation command to the general resource cluster; Perform a state snapshot saving operation on the target cluster task in the general resource cluster, and add the target cluster task to the breakpoint resume queue; The idle resources are reclaimed to the dedicated resource cluster, and the spare resources are called to the dedicated resource cluster to execute high-priority cluster tasks.

7. The method according to claim 4, characterized in that, The step of determining the resource scheduling and adjustment strategy for each resource cluster based on the current cluster resource utilization rate or the overall cluster task execution status within the resource cluster includes: If the execution status of the target priority task corresponding to the general resource cluster meets the resource scheduling adjustment conditions, the task priority of the target priority task shall be increased. The spare resources are called up to the general resource cluster to execute the target priority task.

8. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that is executed by the at least one processor to enable the at least one processor to perform the resource scheduling method according to any one of claims 1-7.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the resource scheduling method according to any one of claims 1-7.

10. A computer program product, characterized in that, It includes a computer program / instruction, wherein the computer program / instruction, when executed by a processor, implements the resource scheduling method according to any one of claims 1-7.