CN106656535B - Method and apparatus for resource scheduling - Google Patents

Method and apparatus for resource scheduling Download PDF

Info

Publication number
CN106656535B
CN106656535B CN201510724098.XA CN201510724098A CN106656535B CN 106656535 B CN106656535 B CN 106656535B CN 201510724098 A CN201510724098 A CN 201510724098A CN 106656535 B CN106656535 B CN 106656535B
Authority
CN
China
Prior art keywords
resource
resource pool
private
application
pool
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510724098.XA
Other languages
Chinese (zh)
Other versions
CN106656535A (en
Inventor
范孝剑
张广舟
林晓斌
周正中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510724098.XA priority Critical patent/CN106656535B/en
Publication of CN106656535A publication Critical patent/CN106656535A/en
Application granted granted Critical
Publication of CN106656535B publication Critical patent/CN106656535B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Abstract

The application aims to provide a method and equipment for resource scheduling, wherein the method comprises the following steps: acquiring a resource use state of a private resource pool; and if the resources of the private resource pool exceed the limit, requesting resource allocation equipment to block the private resource pool resource application of the user, transferring all or part of work of a task which currently causes the resource of the private resource pool to a public resource pool, and after the transfer is completed, requesting the resource allocation equipment to end the blocking of the private resource pool resource application.

Description

Method and apparatus for resource scheduling
Technical Field
The present application relates to the field of computers, and in particular, to a technique for resource scheduling.
Background
Resource scheduling is a necessary basic function of cloud computing, and the stability and the cost of the cloud computing are directly determined by the quality of a resource scheduling effect. Generally, resources needing isolation are many, such as a CPU (central processing unit), a Memory, an IO (input/output), and the like, so far, there are many methods for resource scheduling developed, in order to maximize resource utilization, a plurality of tasks are generally run on one machine, but if we perform resource limitation, the size of the limited resource directly determines the activity and death of the task, such as Memory isolation limitation, and if the task exceeds the Memory limitation, an Out of Memory (Memory overflow) is triggered, and the task is inelegant killed. For a user of a cloud product, task killing obviously affects operation of a service, but the current common method is to restart the task, but the user still feels uncomfortable, because one task is often multiple processes or threads, and the original resource caused by one process or thread is out of limit, and other processes or threads are also affected.
Disclosure of Invention
The technical problem to be solved by the application is to provide a resource scheduling method, so that resources can be reasonably scheduled when the resources are out of limit, the stability of cloud computing is improved, a user cannot perceive the resources, and the user experience is improved.
To this end, a method for resource scheduling at a control device end is provided according to an aspect of the present application, wherein the method includes:
acquiring a resource use state of a private resource pool for processing a task;
and if the resources of the private resource pool are out of limit, transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool.
Further, transferring all or part of the work of the task currently processed by the private resource pool to a public resource pool comprises:
requesting the resource allocation equipment for blocking the private resource pool resource application of the user;
transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
Further, transferring all or part of the work of the currently processed task to the common resource pool comprises:
and transferring the work causing the resource overrun of the private resource pool in the currently processed task to the public resource pool.
Further, the method further comprises: acquiring the resource use state of the public resource pool; and if the resources of the public resource pool are not over-limited, requesting the public resource pool to continue to execute all or part of the transferred tasks, and if the resources of the public resource pool are over-limited, ending the tasks which currently cause the resources of the public resource pool to be over-limited.
Further, the method further comprises: and when the resources of the private resource pool exceed the limit, sending a current resource limit exceeding message to a user corresponding to the task which leads the resources of the private resource pool to exceed the limit.
Further, the method further comprises: and after transferring all or part of the currently processed tasks of the private resource pool to a public resource pool, continuously acquiring the resource use state of the private resource pool, and if the resources of the private resource pool are idle, transferring all or part of the transferred tasks back to the private resource pool.
Further, re-transferring all or a portion of the work of the transferred task back to the private resource pool comprises:
requesting a resource allocation device for blocking a private resource pool resource application of a user;
transferring all or part of the work of the transferred task back to the private resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
According to another aspect of the present application, a method for resource scheduling at a resource allocation device is provided, where the method includes:
acquiring a private resource pool resource application of a user, and allocating resources of a private resource pool to the user;
blocking the private resource pool resource application of the user based on a request of the control device for blocking the private resource pool resource application of the user;
and ending the application of blocking the private resource pool resource based on the request of ending the application of blocking the private resource pool resource of the control equipment.
According to still another aspect of the present application, a control device for resource scheduling is provided, wherein the control device includes:
the private resource pool state acquisition device is used for acquiring the resource use state of the private resource pool of the processing task;
and the resource transfer device is used for transferring all or part of the work of the task currently processed by the private resource pool to a public resource pool if the resources of the private resource pool exceed the limit.
Further, the resource transfer apparatus is configured to include:
requesting the resource allocation equipment for blocking the private resource pool resource application of the user;
transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
Further, the resource transfer device is configured to:
and transferring the work causing the resource overrun of the private resource pool in the currently processed task to the public resource pool.
Further, the control apparatus includes:
and the message sending device is used for sending the current resource overrun message to the user corresponding to the task which causes the resource overrun of the private resource pool when the resource of the private resource pool is overrun.
Further, the control apparatus further includes:
the public resource pool state acquisition device is used for acquiring the resource use state of the public resource pool;
and the public resource pool processing control device is used for requesting the public resource pool to continuously execute all or part of the transferred tasks if the resources of the public resource pool are not over-limited, and ending the tasks which currently cause the resource over-limit of the public resource pool if the resources of the public resource pool are over-limited.
Further, the control apparatus further includes:
and the resource transfer-back device is used for continuously acquiring the resource use state of the private resource pool after all or part of the transferred tasks are transferred to the public resource pool, and transferring all or part of the transferred tasks back to the private resource pool if the resources of the private resource pool are idle.
Further, the resource transfer-back device is configured to include:
requesting a resource allocation device for blocking a private resource pool resource application of a user;
transferring all or part of the work of the transferred task back to the private resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
According to another aspect of the present application, there is provided a resource allocation apparatus for resource scheduling, wherein the resource allocation apparatus includes:
the application acquisition device is used for acquiring the private resource pool resource application of a user and allocating the resources of the private resource pool to the user;
an application blocking device, configured to block a private resource pool resource application of a user based on a request of a control device for blocking the private resource pool resource application of the user;
and the application unblocking device is used for ending the blocking of the private resource pool resource application based on the request for ending the blocking of the private resource pool resource application of the control equipment.
Compared with the prior art, according to the resource scheduling method and the resource scheduling device, when the resources of the private resource pool exceed the limit, all or part of the tasks currently processed by the private resource pool are transferred to the public resource pool, so that the resources can be reasonably scheduled when the resources exceed the limit, the stability of cloud computing is improved, a user cannot perceive the resources, and the user experience is improved.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
fig. 1 illustrates a flowchart of a method for resource scheduling at a control device according to an aspect of the present application;
fig. 2 shows a flowchart of a method for resource scheduling at a resource allocation device according to another aspect of the present application;
fig. 3 is a schematic diagram illustrating a process of a control device cooperating with a resource allocation device to implement resource scheduling according to a preferred embodiment of the present application;
fig. 4 is a schematic diagram of an apparatus for resource scheduling at a resource allocation apparatus according to still another aspect of the present application;
fig. 5 shows a schematic diagram of a resource allocation apparatus for resource scheduling according to another aspect of the present application.
The same or similar reference numbers in the drawings identify the same or similar elements.
Detailed Description
The present application is described in further detail below with reference to the attached figures.
Fig. 1 illustrates a method for resource scheduling at a control device according to an aspect of the present application, where the method includes:
step S11: acquiring a resource use state of a private resource pool for processing a task;
step S12: and if the resources of the private resource pool are out of limit, transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool.
Specifically, the task is executed in the private resource pool by default, so when there is a task, a resource application of the private resource pool needs to be initiated to the resource allocation device, and the resource allocation device allocates the private resource pool to the task based on the resource application.
Here, the private resource pool may be provided by one private resource device, or may be provided by a private resource device group including a plurality of private resource devices. The public resource pool may be provided by a common resource device, or may be provided by a common resource device group including a plurality of common resource devices, and the private resource device or the private resource device group and the common resource device or the common resource device group may be provided at the same network device end, or may be provided at different network device ends.
Next, in step S12, a process of transferring all or part of the currently processed tasks to a public resource pool, and transferring the work that causes resource overrun of the private resource pool in the currently processed tasks to the public resource pool. Specifically, the requesting, from the resource allocation device, the application for blocking the private resource pool resource of the user includes: transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool; and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources. Therefore, the resource usage amount of the current task is reduced, the blocked state is automatically ended, other processes or threads of the task can continuously run, and a user cannot perceive the process.
Further, the method further comprises: and when the resources of the private resource pool exceed the limit, sending a current resource limit exceeding message to a user corresponding to the task which leads the resources of the private resource pool to exceed the limit. The time for sending the message indicating that the current resource is over-limited to the user may be before the resource transfer in step S12, or may be a period of time after the task indicating that the resource of the private resource pool is over-limited is transferred to the public resource pool, so as to prompt the user that the resource over-limited condition occurs, and the user may select to request to expand the resource capacity of the corresponding private resource pool resource according to the message prompt, so as to avoid the resource over-limited condition occurring again.
Then, the common resource pool processes the tasks, including the threads or processes of the tasks, and if the common resource pool does not hold the processes or threads, the tasks where a plurality of processes or threads consuming resources are located are forcibly stopped, so that the stability of the system can be ensured.
In addition, according to the condition that the historical resources of the corresponding users are over-limited, the processes or threads can be selected to continue to be processed in the common resource pool, or the threads or processes of the tasks of the users which cause the resource over-limited times are directly and forcibly ended.
Further, the method further comprises: acquiring the resource use state of the public resource pool; and if the resources of the public resource pool are not over-limited, requesting the public resource pool to continue to execute all or part of the transferred tasks, and if the resources of the public resource pool are over-limited, ending the tasks which currently cause the resources of the public resource pool to be over-limited.
For work that has been removed, if the common resource pool is free, the removed process or thread may continue to run; otherwise, canceling the work of the processes or the threads; when the original task resource group has enough resources, the original task resource group is moved back to the original task group. And if the common resource pool reaches the resource limit, forcibly stopping the tasks of a plurality of processes or threads which consume resources in the common resource pool.
Further, the method further comprises: and after transferring all or part of the currently processed tasks of the private resource pool to a public resource pool, continuously acquiring the resource use state of the private resource pool, and if the resources of the private resource pool are idle, transferring all or part of the transferred tasks back to the private resource pool.
Further, when the resources of the private resource pool are idle, all or part of the work of the transferred task can be directly transferred back to the private resource pool. In a preferred embodiment, to avoid that the private resource pool resource application of the user affects the transfer work during the transfer process, the private resource pool resource application of the user may also be blocked before the transfer process, and specifically, transferring all or part of the transferred task back to the private resource pool includes: requesting a resource allocation device for blocking a private resource pool resource application of a user; transferring all or part of the work of the transferred task back to the private resource pool; and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
Fig. 2 illustrates a method for resource scheduling at a resource allocation device according to another aspect of the present application, wherein the method includes:
step S21: acquiring a private resource pool resource application of a user, and allocating resources of a private resource pool to the user;
step S22: blocking the private resource pool resource application of the user based on a request of the control device for blocking the private resource pool resource application of the user;
step S23: and ending the application of blocking the private resource pool resource based on the request of ending the application of blocking the private resource pool resource of the control equipment.
Here, the resource management device 2 allocates the resources of the private resource pool to the user, and blocks the application of the private resource pool resources at the request of the control device, so that when the control device transfers all or part of the work of the task to the public resource pool, and ends the blocking according to the request of the control device at the end of the transfer, the private resource pool continues to be allocated to the task of the user according to the application of the resources of the user.
Fig. 3 is a schematic diagram illustrating a process of a control device cooperating with a resource allocation device to implement resource scheduling according to a preferred embodiment of the present application. Specifically, the user task is performed in a private resource group, and applies for the resource from the resource allocation device. When a certain user task reaches the resource limit, firstly, the request for applying for the resource is temporarily blocked; and then moving a plurality of tasks of the task to a public resource pool, so that the resource usage amount of the task is reduced, the blocked state is automatically ended, other processes or threads of the task can continue to run, and the user cannot perceive the tasks. If the processes or threads are not released by the common resource pool, the original tasks are forced to be ended, so that the stability of the system can be ensured. For work that has been removed, if the common resource pool is free, the removed process or thread may continue to run; otherwise, canceling the work of the processes or the threads; when the original task resource group has enough resources, the original task resource group is moved back to the original task group. And if the common resource pool reaches the resource limit, forcibly stopping the tasks of a plurality of processes or threads which consume resources in the common resource pool.
Fig. 4 illustrates a control device for resource scheduling according to still another aspect of the present application, wherein the control device 1 includes:
a private resource pool state obtaining device 11, configured to obtain a resource usage state of a private resource pool for processing a task;
and the resource transfer device 12 is configured to transfer all or part of the work of the task currently processed by the private resource pool to a public resource pool if the resource of the private resource pool is out of limit.
Here, the control device 1 includes, but is not limited to, a user device, a network device, or a device in which a user device and a network device are integrated through a network. The user equipment includes, but is not limited to, any mobile electronic product, such as a smart phone, a PDA, and the like, capable of human-computer interaction with a user through a touch panel, and the mobile electronic product may employ any operating system, such as an android operating system, an iOS operating system, and the like. The network device includes an electronic device capable of automatically performing numerical calculation and information processing according to preset or stored instructions, and the hardware includes but is not limited to a microprocessor, an Application Specific Integrated Circuit (ASIC), a programmable gate array (FPGA), a Digital Signal Processor (DSP), an embedded device, and the like. The network device comprises but is not limited to a computer, a network host, a single network server, a plurality of network server sets or a cloud formed by a plurality of servers; here, the Cloud is composed of a large number of computers or web servers based on Cloud Computing (Cloud Computing), which is a kind of distributed Computing, one virtual supercomputer consisting of a collection of loosely coupled computers. Including, but not limited to, the internet, a wide area network, a metropolitan area network, a local area network, a VPN network, a wireless Ad Hoc network (Ad Hoc network), etc. Those skilled in the art will appreciate that other touch control devices are equally suitable for use with the present application, and are intended to be encompassed within the scope of the present application and are hereby incorporated by reference.
It will be appreciated by those skilled in the art that the control device 1 described above is merely exemplary and that other existing or future control devices 1, as may be suitable for use in the present application, are also intended to be encompassed within the scope of the present application and are hereby incorporated by reference.
The above devices are continuously operated, and herein, the skilled person should understand that "continuously" means that the above devices are respectively required to be operated in real time or according to a set or real-time adjusted operation mode until the equipment stops operating.
Specifically, the task is executed in the private resource pool by default, so when there is a task, a resource application of the private resource pool needs to be initiated to the resource allocation device, and the resource allocation device allocates the private resource pool to the task based on the resource application.
Here, the private resource pool may be provided by one private resource device, or may be provided by a private resource device group including a plurality of private resource devices. The public resource pool may be provided by a common resource device, or may be provided by a common resource device group including a plurality of common resource devices, and the private resource device or the private resource device group and the common resource device or the common resource device group may be provided at the same network device end, or may be provided at different network device ends.
Specifically, the resource transferring apparatus 12 transfers all or part of the currently processed tasks to the public resource pool, and transfers the work that causes the resource of the private resource pool to be overrun in the currently processed tasks to the public resource pool, where the resource transferring process of the resource transferring apparatus 12 includes first requesting the resource allocation device to request the application of the private resource pool resource of the blocking user; transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool; and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources. Therefore, the resource usage amount of the current task is reduced, the blocked state is automatically ended, other processes or threads of the task can continuously run, and a user cannot perceive the process.
Further, the control apparatus further includes: and the message sending device is used for sending the current resource overrun message to the user corresponding to the task which causes the resource overrun of the private resource pool when the resource of the private resource pool is overrun. The time for sending the message of the current resource overrun to the user can be before resource transfer, or a period of time after the task of the resource overrun of the private resource pool is transferred to the public resource pool, so as to prompt the user that the resource overrun condition occurs, and the user can select to request to expand the resource capacity of the corresponding private resource pool resource according to the message prompt, so as to avoid the resource overrun condition again.
Then, the common resource pool processes the tasks, including the threads or the processes of the tasks, if the common resource pool does not hold the processes or the threads, the tasks where a plurality of processes or threads consuming resources are located are forcibly stopped and forcibly ended, so that the stability of the system can be ensured.
In addition, according to the condition that the historical resources of the corresponding users are over-limited, the processes or threads can be selected to continue to be processed in the common resource pool, or the threads or processes of the tasks of the users which cause the resource over-limited times are directly and forcibly ended.
Further, the control apparatus 1 further includes: the public resource pool state acquisition device is used for acquiring the resource use state of the public resource pool; and the public resource pool processing control device is used for requesting the public resource pool to continuously execute all or part of the transferred tasks if the resources of the public resource pool are not over-limited, and ending the tasks which currently cause the resource over-limit of the public resource pool if the resources of the public resource pool are over-limited.
For work that has been removed, if the common resource pool is free, the removed process or thread may continue to run; otherwise, canceling the work of the processes or the threads; when the original task resource group has enough resources, the original task resource group is moved back to the original task group. And if the common resource pool reaches the resource limit, forcibly stopping the tasks of a plurality of processes or threads which consume resources in the common resource pool.
Further, the control apparatus 1 further includes: and the resource transfer-back device is used for continuously acquiring the resource use state of the private resource pool after all or part of the transferred tasks are transferred to the public resource pool, and transferring all or part of the transferred tasks back to the private resource pool if the resources of the private resource pool are idle.
Further, when the resources of the private resource pool are idle, all or part of the work of the transferred task can be directly transferred back to the private resource pool. In a preferred embodiment, in order to avoid that the private resource pool resource application of the user affects the transfer work in the transfer process, the private resource pool resource application of the user may be blocked before the transfer process, and specifically, the process that the resource transfer-back device transfers all or part of the transferred tasks back to the private resource pool includes: requesting a resource allocation device for blocking a private resource pool resource application of a user; transferring all or part of the work of the transferred task back to the private resource pool; and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
Fig. 5 shows a resource allocation device for resource scheduling according to another aspect of the present application, where the resource allocation device 2 includes:
an application acquiring device 21, configured to acquire a private resource pool resource application of a user, and allocate resources of the private resource pool to the user;
an application blocking means 22, configured to block the private resource pool resource application of the user based on a request of the control device for blocking the private resource pool resource application of the user;
and an application unblocking device 23, configured to end blocking the private resource pool resource application based on a request for ending blocking the private resource pool resource application by the control device.
Here, the resource allocation apparatus 2 may be implemented by a network host, a single network server, a cloud of a plurality of network server sets or a plurality of servers, or the like. Here, the Cloud is made up of a large number of hosts or web servers based on Cloud Computing (Cloud Computing), which is a type of distributed Computing, a super virtual computer consisting of a collection of loosely coupled computers. Those skilled in the art will appreciate that the foregoing network devices are merely exemplary and that other existing or future network devices, as may be suitable for use in the present application, are also encompassed within the scope of the present application and are hereby incorporated by reference. Here, the network host includes an electronic device capable of automatically performing numerical calculation and information processing according to instructions set or stored in advance, and hardware thereof includes, but is not limited to, a microprocessor, an Application Specific Integrated Circuit (ASIC), a programmable gate array (FPGA), a Digital Signal Processor (DSP), an embedded device, and the like. In addition, the resource allocation device 2 and the control device 1 may be located on the same network service side or on different network service sides.
Those skilled in the art should understand that the above-mentioned resource allocation device 2 is only an example, and other existing or future resource allocation devices 2 may be applicable to the present application, and shall be included in the scope of the present application, and is included herein by reference.
The above devices are continuously operated, and herein, the skilled person should understand that "continuously" means that the above devices are respectively required to be operated in real time or according to a set or real-time adjusted operation mode until the equipment stops operating.
The application obtaining device 21 of the resource management device 2 allocates resources of the private resource pool to the user, and the application blocking device 22 blocks the application of the resources of the private resource pool at the request of the control device, so that when the control device transfers all or part of the work of the task to the public resource pool, the application unblocking device 23 ends the blocking at the end of the transfer according to the request of the control device, and the application obtaining device 21 continues to allocate the private resource pool to the task of the user according to the application of the resources of the user.
Referring to fig. 3 specifically, in the process of implementing resource scheduling by the cooperation of the control device and the resource allocation device, the user task is performed in the private resource group, and applies for the resource from the resource allocation device. When a certain user task reaches the resource limit, firstly, the request for applying for the resource is temporarily blocked; and then moving a plurality of tasks of the task to a public resource pool, so that the resource usage amount of the task is reduced, the blocked state is automatically ended, other processes or threads of the task can continue to run, and the user cannot perceive the tasks. If the processes or threads are not released by the common resource pool, the original tasks are forced to be ended, so that the stability of the system can be ensured. For work that has been removed, if the common resource pool is free, the removed process or thread may continue to run; otherwise, canceling the work of the processes or the threads; when the original task resource group has enough resources, the original task resource group is moved back to the original task group. And if the common resource pool reaches the resource limit, forcibly stopping the tasks of a plurality of processes or threads which consume resources in the common resource pool.
Compared with the prior art, according to the resource scheduling method and the resource scheduling device, when the resources of the private resource pool exceed the limit, all or part of the tasks currently processed by the private resource pool are transferred to the public resource pool, so that the resources can be reasonably scheduled when the resources exceed the limit, the stability of cloud computing is improved, a user cannot perceive the resources, and the user experience is improved.
It should be noted that the present application may be implemented in software and/or a combination of software and hardware, for example, implemented using Application Specific Integrated Circuits (ASICs), general purpose computers or any other similar hardware devices. In one embodiment, the software programs of the present application may be executed by a processor to implement the steps or functions described above. Likewise, the software programs (including associated data structures) of the present application may be stored in a computer readable recording medium, such as RAM memory, magnetic or optical drive or diskette and the like. Additionally, some of the steps or functions of the present application may be implemented in hardware, for example, as circuitry that cooperates with the processor to perform various steps or functions.
In addition, some of the present application may be implemented as a computer program product, such as computer program instructions, which when executed by a computer, may invoke or provide methods and/or techniques in accordance with the present application through the operation of the computer. Program instructions which invoke the methods of the present application may be stored on a fixed or removable recording medium and/or transmitted via a data stream on a broadcast or other signal-bearing medium and/or stored within a working memory of a computer device operating in accordance with the program instructions. An embodiment according to the present application comprises an apparatus comprising a memory for storing computer program instructions and a processor for executing the program instructions, wherein the computer program instructions, when executed by the processor, trigger the apparatus to perform a method and/or a solution according to the aforementioned embodiments of the present application.
It will be evident to those skilled in the art that the present application is not limited to the details of the foregoing illustrative embodiments, and that the present application may be embodied in other specific forms without departing from the spirit or essential attributes thereof. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the application being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. Any reference sign in a claim should not be construed as limiting the claim concerned. Furthermore, it is obvious that the word "comprising" does not exclude other elements or steps, and the singular does not exclude the plural. A plurality of units or means recited in the apparatus claims may also be implemented by one unit or means in software or hardware. The terms first, second, etc. are used to denote names, but not any particular order.

Claims (14)

1. A method for resource scheduling at a control device, wherein the method comprises:
acquiring a resource use state of a private resource pool for processing a task;
if the resources of the private resource pool are out of limit, transferring all or part of the tasks currently processed by the private resource pool to a public resource pool;
wherein transferring all or part of the work of the task currently processed by the private resource pool to a public resource pool comprises:
requesting a resource allocation device for blocking a private resource pool resource application of a user;
transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources so as to enable other processes or threads of the task to continue to run.
2. The method of claim 1, wherein transferring all or part of the work of the currently processed task to a common resource pool comprises:
and transferring the work causing the resource overrun of the private resource pool in the currently processed task to the public resource pool.
3. The method of claim 1, wherein the method comprises:
and when the resources of the private resource pool exceed the limit, sending a current resource limit exceeding message to a user corresponding to the task which leads the resources of the private resource pool to exceed the limit.
4. The method of claim 1, wherein the method further comprises:
acquiring the resource use state of the public resource pool;
and if the resources of the public resource pool are not over-limited, requesting the public resource pool to continue to execute all or part of the transferred tasks, and if the resources of the public resource pool are over-limited, ending the tasks which currently cause the resources of the public resource pool to be over-limited.
5. The method of any of claims 1-4, wherein the method further comprises: and after transferring all or part of the currently processed tasks of the private resource pool to a public resource pool, continuously acquiring the resource use state of the private resource pool, and if the resources of the private resource pool are idle, transferring all or part of the transferred tasks back to the private resource pool.
6. The method of claim 5, wherein re-transferring all or part of the work of the transferred task back to the private resource pool comprises:
requesting a resource allocation device for blocking a private resource pool resource application of a user;
transferring all or part of the work of the transferred task back to the private resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
7. A method for resource scheduling at a resource allocation device, wherein the method comprises:
acquiring a private resource pool resource application of a user, and allocating resources of a private resource pool to the user;
blocking the private resource pool resource application of the user based on a request of the control device for blocking the private resource pool resource application of the user;
and based on the request for ending the blocking of the private resource pool resource application of the control equipment, ending the blocking of the private resource pool resource application so as to enable other processes or threads of the task to continue to run.
8. A control device for resource scheduling, wherein the control device comprises:
the private resource pool state acquisition device is used for acquiring the resource use state of the private resource pool of the processing task;
the resource transfer device is used for transferring all or part of the work of the task currently processed by the private resource pool to a public resource pool if the resources of the private resource pool exceed the limit;
wherein the resource transfer device is configured to:
requesting a resource allocation device for blocking a private resource pool resource application of a user;
transferring all or part of the work of the tasks currently processed by the private resource pool to a public resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources so as to enable other processes or threads of the task to continue to run.
9. The control device of claim 8, wherein the resource transfer means is configured to:
and transferring the work causing the resource overrun of the private resource pool in the currently processed task to the public resource pool.
10. The control apparatus according to claim 8, wherein the control apparatus comprises:
and the message sending device is used for sending the current resource overrun message to the user corresponding to the task which causes the resource overrun of the private resource pool when the resource of the private resource pool is overrun.
11. The control apparatus according to claim 8, wherein the control apparatus further comprises:
the public resource pool state acquisition device is used for acquiring the resource use state of the public resource pool;
and the public resource pool processing control device is used for requesting the public resource pool to continuously execute all or part of the transferred tasks if the resources of the public resource pool are not over-limited, and ending the tasks which currently cause the resource over-limit of the public resource pool if the resources of the public resource pool are over-limited.
12. The control apparatus according to claim 8, wherein the control apparatus further comprises:
and the resource transfer-back device is used for continuously acquiring the resource use state of the private resource pool after all or part of the transferred tasks are transferred to the public resource pool, and transferring all or part of the transferred tasks back to the private resource pool if the resources of the private resource pool are idle.
13. The control device of claim 11, wherein the resource transfer-back means is for including:
requesting a resource allocation device for blocking a private resource pool resource application of a user;
transferring all or part of the work of the transferred task back to the private resource pool;
and after the transfer is finished, requesting the resource allocation equipment to end the application for blocking the private resource pool resources.
14. A resource allocation apparatus for resource scheduling, wherein the resource allocation apparatus comprises:
the application acquisition device is used for acquiring the private resource pool resource application of a user and allocating the resources of the private resource pool to the user;
an application blocking device, configured to block a private resource pool resource application of a user based on a request of a control device for blocking the private resource pool resource application of the user;
and the application blocking-removing device is used for stopping blocking the private resource pool resource application based on the request for stopping blocking the private resource pool resource application of the control equipment so as to enable other processes or threads of the task to continue to run.
CN201510724098.XA 2015-10-29 2015-10-29 Method and apparatus for resource scheduling Active CN106656535B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510724098.XA CN106656535B (en) 2015-10-29 2015-10-29 Method and apparatus for resource scheduling

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510724098.XA CN106656535B (en) 2015-10-29 2015-10-29 Method and apparatus for resource scheduling

Publications (2)

Publication Number Publication Date
CN106656535A CN106656535A (en) 2017-05-10
CN106656535B true CN106656535B (en) 2021-01-15

Family

ID=58830497

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510724098.XA Active CN106656535B (en) 2015-10-29 2015-10-29 Method and apparatus for resource scheduling

Country Status (1)

Country Link
CN (1) CN106656535B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114780170B (en) * 2022-04-11 2023-07-21 远景智能国际私人投资有限公司 Container resource configuration method, device, equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101640644A (en) * 2009-09-01 2010-02-03 杭州华三通信技术有限公司 Method and equipment for flow equilibrium based on flexible link group
CN101741732A (en) * 2009-11-30 2010-06-16 中国人民解放军国防科学技术大学 Extension managing method for network node memory in capacity delay network
CN102279771A (en) * 2011-09-02 2011-12-14 北京航空航天大学 Method and system for adaptively allocating resources as required in virtualization environment
CN102981910A (en) * 2012-11-02 2013-03-20 曙光云计算技术有限公司 Realization method and realization device for virtual machine scheduling
CN104348881A (en) * 2013-08-08 2015-02-11 中国电信股份有限公司 Method and device for user resource partitioning in cloud management platform
CN104375897A (en) * 2014-10-27 2015-02-25 西安工程大学 Cloud computing resource scheduling method based on minimum relative load imbalance degree

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101640644A (en) * 2009-09-01 2010-02-03 杭州华三通信技术有限公司 Method and equipment for flow equilibrium based on flexible link group
CN101741732A (en) * 2009-11-30 2010-06-16 中国人民解放军国防科学技术大学 Extension managing method for network node memory in capacity delay network
CN102279771A (en) * 2011-09-02 2011-12-14 北京航空航天大学 Method and system for adaptively allocating resources as required in virtualization environment
CN102981910A (en) * 2012-11-02 2013-03-20 曙光云计算技术有限公司 Realization method and realization device for virtual machine scheduling
CN104348881A (en) * 2013-08-08 2015-02-11 中国电信股份有限公司 Method and device for user resource partitioning in cloud management platform
CN104375897A (en) * 2014-10-27 2015-02-25 西安工程大学 Cloud computing resource scheduling method based on minimum relative load imbalance degree

Also Published As

Publication number Publication date
CN106656535A (en) 2017-05-10

Similar Documents

Publication Publication Date Title
EP3073374B1 (en) Thread creation method, service request processing method and related device
US11582166B2 (en) Systems and methods for provision of a guaranteed batch
CN109451051B (en) Service request processing method and device, electronic equipment and storage medium
JP2015075803A5 (en) Data processing management method, information processing apparatus, and data processing management program
JP2014520346A5 (en)
JP2015535636A (en) Method, apparatus and system for realizing hot migration of virtual machine
CN104216768A (en) Data processing method and device
DE102020102783A1 (en) METHODS AND DEVICES FOR IMPROVING A PERFORMANCE DATA COLLECTION OF A HIGH PERFORMANCE CALCULATION APPLICATION
TWI529622B (en) Video image distribution method
CN110599148B (en) Cluster data processing method and device, computer cluster and readable storage medium
CN107491346A (en) A kind of task processing method of application, apparatus and system
CN106897299B (en) Database access method and device
CN104168310A (en) Method and apparatus for scheduling cloud end vertual server
WO2016150324A1 (en) Page module rendering method, apparatus and display device
CN109656691A (en) Processing method, device and the electronic equipment of computing resource
CN103488538B (en) Application extension device and application extension method in cloud computing system
CN109428926B (en) Method and device for scheduling task nodes
CN106656535B (en) Method and apparatus for resource scheduling
EP3279795A1 (en) Method and apparatus for deleting cloud host in cloud computing environment, server and storage medium
CN104702534A (en) Method and device for processing data of multi-process sharing port
CN109819674B (en) Computer storage medium, embedded scheduling method and system
CN103729417A (en) Method and device for data scanning
DE112016004264T5 (en) METHOD AND DEVICE FOR DYNAMICALLY DISTRIBUTING THE PERFORMANCE OF THE MACHINE CODE IN AN APPLICATION TO A VIRTUAL MACHINE
CN104021046A (en) Method and device for processing applications
CN109189581B (en) Job scheduling method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant