CN109271236A - A kind of method, apparatus of traffic scheduling, computer storage medium and terminal - Google Patents
A kind of method, apparatus of traffic scheduling, computer storage medium and terminal Download PDFInfo
- Publication number
- CN109271236A CN109271236A CN201811084824.6A CN201811084824A CN109271236A CN 109271236 A CN109271236 A CN 109271236A CN 201811084824 A CN201811084824 A CN 201811084824A CN 109271236 A CN109271236 A CN 109271236A
- Authority
- CN
- China
- Prior art keywords
- jobs
- priority
- scheduling
- resources
- priority level
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
A kind of method, apparatus of traffic scheduling, computer storage medium and terminal, comprising: the operation in system is divided into two or more priority levels;The scheduling of operation is carried out according to the priority level of division.The embodiment of the present invention realizes the scheduling of operation according to the division of priority level, optimizes the process of job run, improves the efficiency of job run.
Description
Technical Field
The present disclosure relates to, but not limited to, computer clustering technologies, and in particular, to a method, an apparatus, a computer storage medium, and a terminal for scheduling a service.
Background
Kubernets (K8 s for short, is an open source, used for managing containerized applications on multiple hosts in a cloud platform, and its objective is to make deploying containerized applications simple and efficient, and provide a mechanism for application deployment, planning, updating, and maintenance) the main functions of the container cluster management system include: packaging, instantiating and running the application program by using a Docker (an open-source application container engine, so that developers can package their applications and dependence packages into a portable container and then release the package to any popular Linux machine, and can also realize virtualization); running and managing containers across hosts in a cluster manner; the problem of communication between containers running between different hosts is solved, and the like. The Scheduler (Scheduler) is a Scheduler loaded and operated in the kubernets container cluster management system, which is responsible for collecting and statistically analyzing the resource usage of all nodes (nodes) in the system, and then based on this, sends the newly-built Pod (Pod is an abstract concept, which contains a container group composed of one or more containers, and also the resources shared by these containers; Pod is similar to a logical host with specific application in model, which can contain different application containers that are relatively tightly coupled; Pod is an atomic unit in the kubernets platform, and Pod is operated on Node) to the available Node with the highest priority for building.
In the process of adding Pod, the scheduling strategy of the scheduler is divided into two stages: a preparation (predites) phase and a priority scheduling (Priorities) phase; the Predicates stage is mainly used for determining whether the Pod can be dispatched to a specific Node to run, outputting and recording all nodes meeting the requirements at the stage, and taking the result as the input of the second stage; the priority stage is to answer "which is the more appropriate question", i.e. to screen the nodes again, to screen out the node that is most appropriate to operate Pod. Specifically, the Predicates stage includes five scheduling strategies: respectively determining nodes suitable for operating Pod from the aspects of ports, resources, hard disks and the like, and recording the names of the nodes; the priority phase includes three scheduling policies: a least request resource priority scheduling policy (leaserequest priority), a least equal service priority scheduling policy (servicespareadingpriority), and an equal priority scheduling policy (equal priority). Comparing the nodes determined in the Predicates stage through the three scheduling strategies to determine the nodes finally used for operating Pod; specifically, the calculation principle of LeastRequestedpriority is to schedule the newly created Pod to a Node with smaller occupied calculation resources as much as possible, where the "calculation resources" include Central Processing Unit (CPU) resources and Memory (Memory) resources; the calculation principle of the serviceSpreadingpriority is that the number of the Pods belonging to the same service on the same Node is reduced as much as possible, so that the dispatched Pods can realize high availability and flow load balance of the service as much as possible; the calculation principle of equal priority is to equally treat each available Node screened out in the Predicates stage; at present, LeastRequestedpriority is the main basis for determining the node that is ultimately used to run the Pod.
Currently, a Kubernetes container cluster management system mainly carries out scheduling operation of operations according to time sequence, and when key operations do not operate timely, system service is influenced; in order to avoid the influence on system service, the operation scheduling is mainly performed manually by technicians, so that the operation is complex and the efficiency is low.
Disclosure of Invention
The following is a summary of the subject matter described in detail herein. This summary is not intended to limit the scope of the claims.
Embodiments of the present invention provide a method and an apparatus for scheduling a service, a computer storage medium, and a terminal, which can optimize a flow of job operation and improve efficiency of job operation.
The embodiment of the invention provides a method for scheduling service, which comprises the following steps:
dividing the jobs in the system into two or more priority levels;
and scheduling the job according to the divided priority level.
Optionally, the dividing the jobs in the system into two or more priority levels includes:
dividing the jobs in the system into a first priority and a second priority according to business logic and/or system available resources;
wherein the system available resources include part or all of the following resources: central processing unit resources and memory resources; the first priority is higher than the second priority.
Optionally, before dividing the jobs in the system into two or more priority levels, the method further includes, according to a preset period, performing the following determination processing:
when the system available resources in the system meet the running requirements of all jobs in the system, determining not to divide the priority level of the jobs;
and when the available system resources in the system cannot meet the running requirements of all the jobs in the system, determining to divide the priority levels of the jobs.
Optionally, after dividing the job in the system into two or more priority levels and before scheduling the job according to the divided priority levels, the method further includes:
judging whether the available resources of the system can meet the running of all the jobs with higher priority levels;
the system available resources can not meet the running of all the jobs with higher priority levels, and the running jobs with lower priority levels are stopped one by one until the system available resources can meet the running of all the jobs with higher priority levels;
wherein the higher priority level job comprises: the job with the highest priority level.
Optionally, the scheduling the job according to the divided priority levels includes:
adding the jobs with the divided priority levels into a preset scheduling queue according to the high-low sequence of the priority levels;
and scheduling the jobs according to the sequence of the jobs added to the scheduling queue.
Optionally, when the job is scheduled according to the divided priority levels, the method further includes:
judging the waiting time of the operation with lower priority level;
when the waiting time of the operation with the lower priority level is longer than the preset time, the priority level of the operation is adjusted to be a high priority level;
wherein the lower priority level job comprises: the job with the lowest priority level.
On the other hand, an embodiment of the present invention further provides a device for service scheduling, including: a dividing unit and a scheduling unit; wherein,
the dividing unit is used for: dividing the jobs in the system into two or more priority levels;
the scheduling unit is used for: and scheduling the job according to the divided priority level.
Optionally, the dividing unit is specifically configured to:
dividing the jobs in the system into a first priority and a second priority according to business logic and/or system available resources;
wherein the system available resources include part or all of the following resources: central processing unit resources and memory resources; the first priority is higher than the second priority.
Optionally, the apparatus further includes a determining unit, configured to:
when the system available resources in the system meet the running requirements of all jobs in the system, determining not to divide the priority level of the jobs; and when the available system resources in the system cannot meet the running requirements of all the jobs in the system, determining to divide the priority levels of the jobs.
In another aspect, an embodiment of the present invention further provides a computer storage medium, where computer-executable instructions are stored in the computer storage medium, and the computer-executable instructions are used to execute the service scheduling method.
In another aspect, an embodiment of the present invention further provides a terminal, including: a memory and a processor; wherein,
the processor is configured to execute program instructions in the memory;
the program instructions read on the processor to perform the following operations:
dividing the jobs in the system into two or more priority levels;
and scheduling the job according to the divided priority level.
Compared with the related art, the technical scheme of the application comprises the following steps: dividing the jobs in the system into two or more priority levels; and scheduling the job according to the divided priority level. According to the embodiment of the invention, the scheduling of the operation is realized according to the division of the priority level, the operation flow is optimized, and the operation efficiency is improved.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the example serve to explain the principles of the invention and not to limit the invention.
Fig. 1 is a flowchart of a method for scheduling services according to an embodiment of the present invention;
fig. 2 is a block diagram of a service scheduling apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, embodiments of the present invention will be described in detail below with reference to the accompanying drawings. It should be noted that the embodiments and features of the embodiments in the present application may be arbitrarily combined with each other without conflict.
The steps illustrated in the flow charts of the figures may be performed in a computer system such as a set of computer-executable instructions. Also, while a logical order is shown in the flow diagrams, in some cases, the steps shown or described may be performed in an order different than here.
Fig. 1 is a flowchart of a method for scheduling a service according to an embodiment of the present invention, as shown in fig. 1, including:
step 101, dividing the operation in the system into two or more priority levels;
optionally, the dividing the jobs in the system into two or more priority levels includes:
dividing the jobs in the system into a first priority and a second priority according to business logic and/or system available resources;
wherein the system available resources include part or all of the following resources: central processing unit resources and memory resources; the first priority is higher than the second priority.
It should be noted that, according to the service logic and the available resources of the system, a person skilled in the art can determine that the previous job with important service logic is a service with higher priority level.
Optionally, the dividing the jobs in the system into a first priority and a second priority according to the embodiment of the present invention includes:
and receiving the division information of the priority level through a preset information interaction interface, and dividing the jobs in the system into a first priority and a second priority.
It should be noted that the interactive interface of the embodiment of the present invention may include an Application Programming Interface (API).
And step 102, scheduling the job according to the divided priority level.
Optionally, before dividing the job in the system into two or more priority levels, the method according to the embodiment of the present invention further includes, according to a preset period, performing the following determination processing:
when the system available resources in the system meet the running requirements of all jobs in the system, determining not to divide the priority level of the jobs;
when the system available resources in the system cannot meet the running requirements of all jobs in the system, determining to divide the priority levels of the jobs;
it should be noted that, in the embodiment of the present invention, the preset period may be set according to a unit time length of the operation, and may be the minimum unit time length. Whether the available resources of the system meet the running requirements of the job can be determined by analyzing the occupation condition of the resources when the job runs according to the amount of the available resources of the system by a person skilled in the art.
Optionally, after dividing the job in the system into two or more priority levels and before scheduling the job according to the divided priority levels, the method according to the embodiment of the present invention further includes:
judging whether the available resources of the system can meet the running of all the jobs with higher priority levels;
the system available resources can not meet the running of all the jobs with higher priority levels, and the running jobs with lower priority levels are stopped one by one until the system available resources can meet the running of all the jobs with higher priority levels;
wherein the higher priority level job comprises: the job with the highest priority level.
It should be noted that, for the reason that the higher priority level is relativity, in the embodiment of the present invention, it is assumed that the priority level is divided into two levels, that is, priority processing is required and priority processing is not required, and the job with the higher priority level is a job with a priority level that needs priority processing; assuming that three or more priority levels are set in the embodiment of the present invention, the embodiment of the present invention may select, as the job with the higher priority level, a plurality of jobs with higher priority levels after sorting the jobs in the order from the higher priority level to the lower priority level.
Optionally, the scheduling the job according to the divided priority levels in the embodiment of the present invention includes:
adding the jobs with the divided priority levels into a preset scheduling queue according to the high-low sequence of the priority levels;
and scheduling the jobs according to the sequence of the jobs added to the scheduling queue.
It should be noted that, for jobs with the same priority, the job scheduling order may be determined according to the job start time with reference to the related art. And adding the terminated low-priority jobs to a pre-established scheduling queue.
Optionally, when scheduling the job according to the divided priority levels, the method according to the embodiment of the present invention further includes:
judging the waiting time of the operation with lower priority level;
when the waiting time of the operation with the lower priority level is longer than the preset time, the priority level of the operation is adjusted to be a high priority level;
wherein the lower priority level job comprises: the job with the lowest priority level.
It should be noted that, in the embodiment of the present invention, the job adjusted to the high priority may be added to the head of the scheduling queue, or the job whose priority adjustment is completed may be added to the scheduling queue according to time.
After the priority level of the job is determined, the job scheduling according to the priority level of the job may include: when the available resources of the system are insufficient, the running jobs with lower priorities are terminated, and the resources are released to be used for running the jobs with higher priorities. The operation scheduled by the embodiment of the invention realizes the scheduling through the scheduling queue, and the terminated low-priority operation can be added into the scheduling queue again to wait for the resource allocation. When the scheduling queue is empty, scheduling ends. Taking Kubernetes' resource scheduling as an example, the embodiment of the present invention may include: creating a scheduling queue, assigning a scheduling strategy and scheduling; the specific process may include: and providing an interface for performing priority level division on the jobs in Kubernetes for a user, and realizing the priority level division of the jobs. And (3) specifying a scheduling strategy: if the resources of the jobs with the high priority level are insufficient, the resources of the jobs with the low priority level which are started to run recently (the jobs with the low priority level are run according to time sequence) can be preempted; the method specifically comprises the following steps: terminating the operation process with the low priority level until the available system resources (residual resources) are enough for the operation with the high priority level, and waiting for the completion of the operation of the existing high-level operation if the operation process is not enough after all the operations are terminated; then adding the terminated jobs with low priority levels into the scheduling queue again to wait for scheduling; jobs with low priority levels cannot be preempted, and jobs with high priority levels cannot be preempted; the embodiment of the invention sets the maximum tolerance time, and avoids the situation that a certain low-priority-level job is always at the tail of the scheduling queue and can not be executed. When the waiting time of a certain low-priority-level operation is longer than the preset time, the embodiment of the invention adjusts the priority level of the operation to be a high-priority level; the embodiment of the invention can move the operation with the adjusted priority level to the head of the scheduling queue; the embodiment of the invention can set the scheduling queue to store the node data in a bidirectional linked list mode. And when the head node is empty, the scheduling queue is empty, and the scheduling task is completed. And for each node newly added into the scheduling queue, firstly judging the priority level of the node, if the priority level is low, directly adding the node to the tail of the queue, and if the priority level is high, traversing each node from the head of the queue in sequence and adding the node to the front of the node with the first priority level being low. The embodiment of the invention perfects the Kubernetes resource scheduling system based on the priority resource preemption scheduling strategy, and realizes more reasonable and efficient utilization of computing resources in practical application.
Compared with the related art, the technical scheme of the application comprises the following steps: dividing the jobs in the system into two or more priority levels; and scheduling the job according to the divided priority level. According to the embodiment of the invention, the scheduling of the operation is realized according to the division of the priority level, the operation flow is optimized, and the operation efficiency is improved.
Fig. 2 is a block diagram of a service scheduling apparatus according to an embodiment of the present invention, and as shown in fig. 2, the apparatus includes: a dividing unit and a scheduling unit; wherein,
the dividing unit is used for: dividing the jobs in the system into two or more priority levels;
the scheduling unit is used for: and scheduling the job according to the divided priority level.
Optionally, the dividing unit in the embodiment of the present invention is specifically configured to:
dividing the jobs in the system into a first priority and a second priority according to business logic and/or system available resources;
wherein the system available resources include part or all of the following resources: central processing unit resources and memory resources; the first priority is higher than the second priority.
Optionally, the dividing the jobs in the system into a first priority and a second priority according to the embodiment of the present invention includes:
and receiving the division information of the priority level through a preset information interaction interface, and dividing the jobs in the system into a first priority and a second priority.
It should be noted that the interactive interface of the embodiment of the present invention may include an Application Programming Interface (API).
Optionally, the apparatus in this embodiment of the present invention further includes a determining unit, configured to:
when the system available resources in the system meet the running requirements of all jobs in the system, determining not to divide the priority level of the jobs; when the system available resources in the system cannot meet the running requirements of all jobs in the system, determining to divide the priority levels of the jobs;
it should be noted that, in the embodiment of the present invention, the preset period may be set according to a unit time length of the operation, and may be the minimum unit time length.
Optionally, the device scheduling unit in the embodiment of the present invention is further configured to:
judging whether the available resources of the system can meet the running of all the jobs with higher priority levels;
the system available resources can not meet the running of all the jobs with higher priority levels, and the running jobs with lower priority levels are stopped one by one until the system available resources can meet the running of all the jobs with higher priority levels;
wherein the higher priority level job comprises: the job with the highest priority level.
It should be noted that, for the reason that the higher priority level is relativity, in the embodiment of the present invention, it is assumed that the priority level is divided into two levels, that is, priority processing is required and priority processing is not required, and the job with the higher priority level is a job with a priority level that needs priority processing; assuming that three or more priority levels are set in the embodiment of the present invention, the embodiment of the present invention may select, as the job with the higher priority level, a plurality of jobs with higher priority levels after sorting the jobs in the order from the higher priority level to the lower priority level.
Optionally, the scheduling of the job by the scheduling unit according to the divided priority levels in the embodiment of the present invention includes:
adding the jobs with the divided priority levels into a preset scheduling queue according to the high-low sequence of the priority levels;
and scheduling the jobs according to the sequence of the jobs added to the scheduling queue.
It should be noted that, for jobs with the same priority, the job scheduling order may be determined according to the job start time with reference to the related art. And adding the terminated low-priority jobs to a pre-established scheduling queue.
Optionally, the device scheduling unit in the embodiment of the present invention is further configured to:
judging the waiting time of the operation with lower priority level;
when the waiting time of the operation with the lower priority level is longer than the preset time, the priority level of the operation is adjusted to be a high priority level;
wherein the lower priority level job comprises: the job with the lowest priority level.
It should be noted that, in the embodiment of the present invention, the job adjusted to the high priority may be added to the head of the scheduling queue, or the job whose priority adjustment is completed may be added to the scheduling queue according to time.
Compared with the related art, the technical scheme of the application comprises the following steps: dividing the jobs in the system into two or more priority levels; and scheduling the job according to the divided priority level. According to the embodiment of the invention, the scheduling of the operation is realized according to the division of the priority level, the operation flow is optimized, and the operation efficiency is improved.
The embodiment of the invention also provides a computer storage medium, wherein the computer storage medium stores computer executable instructions, and the computer executable instructions are used for executing the service scheduling method.
An embodiment of the present invention further provides a terminal, including: a memory and a processor; wherein,
the processor is configured to execute program instructions in the memory;
the program instructions read on the processor to perform the following operations:
dividing the jobs in the system into two or more priority levels;
and scheduling the job according to the divided priority level.
It will be understood by those skilled in the art that all or part of the steps of the above methods may be implemented by a program instructing associated hardware (e.g., a processor) to perform the steps, and the program may be stored in a computer readable storage medium, such as a read only memory, a magnetic or optical disk, and the like. Alternatively, all or part of the steps of the above embodiments may be implemented using one or more integrated circuits. Accordingly, each module/unit in the above embodiments may be implemented in hardware, for example, by an integrated circuit to implement its corresponding function, or in software, for example, by a processor executing a program/instruction stored in a memory to implement its corresponding function. The present invention is not limited to any specific form of combination of hardware and software.
Although the embodiments of the present invention have been described above, the above description is only for the convenience of understanding the present invention, and is not intended to limit the present invention. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.
Claims (11)
1. A method for traffic scheduling, comprising:
dividing the jobs in the system into two or more priority levels;
and scheduling the job according to the divided priority level.
2. The method of claim 1, wherein the dividing jobs in a system into two or more priority levels comprises:
dividing the jobs in the system into a first priority and a second priority according to business logic and/or system available resources;
wherein the system available resources include part or all of the following resources: central processing unit resources and memory resources; the first priority is higher than the second priority.
3. The method according to claim 1 or 2, wherein before dividing the jobs in the system into two or more priority levels, the method further comprises, in a preset cycle, performing the following determination process:
when the system available resources in the system meet the running requirements of all jobs in the system, determining not to divide the priority level of the jobs;
and when the available system resources in the system cannot meet the running requirements of all the jobs in the system, determining to divide the priority levels of the jobs.
4. The method of claim 3, wherein after dividing the jobs in the system into two or more priority levels and before scheduling the jobs according to the divided priority levels, the method further comprises:
judging whether the available resources of the system can meet the running of all the jobs with higher priority levels;
the system available resources can not meet the running of all the jobs with higher priority levels, and the running jobs with lower priority levels are stopped one by one until the system available resources can meet the running of all the jobs with higher priority levels;
wherein the higher priority level job comprises: the job with the highest priority level.
5. The method according to claim 1 or 2, wherein said scheduling of jobs according to the prioritized level comprises:
adding the jobs with the divided priority levels into a preset scheduling queue according to the high-low sequence of the priority levels;
and scheduling the jobs according to the sequence of the jobs added to the scheduling queue.
6. The method according to claim 1 or 2, wherein when scheduling of the job is performed according to the divided priority levels, the method further comprises:
judging the waiting time of the operation with lower priority level;
when the waiting time of the operation with the lower priority level is longer than the preset time, the priority level of the operation is adjusted to be a high priority level;
wherein the lower priority level job comprises: the job with the lowest priority level.
7. An apparatus for traffic scheduling, comprising: a dividing unit and a scheduling unit; wherein,
the dividing unit is used for: dividing the jobs in the system into two or more priority levels;
the scheduling unit is used for: and scheduling the job according to the divided priority level.
8. The apparatus according to claim 7, wherein the dividing unit is specifically configured to:
dividing the jobs in the system into a first priority and a second priority according to business logic and/or system available resources;
wherein the system available resources include part or all of the following resources: central processing unit resources and memory resources; the first priority is higher than the second priority.
9. The apparatus according to claim 7 or 8, characterized in that the apparatus further comprises a determining unit for:
when the system available resources in the system meet the running requirements of all jobs in the system, determining not to divide the priority level of the jobs; and when the available system resources in the system cannot meet the running requirements of all the jobs in the system, determining to divide the priority levels of the jobs.
10. A computer storage medium having stored thereon computer-executable instructions for performing the method of traffic scheduling of any of claims 1-6.
11. A terminal, comprising: a memory and a processor; wherein,
the processor is configured to execute program instructions in the memory;
the program instructions read on the processor to perform the following operations:
dividing the jobs in the system into two or more priority levels;
and scheduling the job according to the divided priority level.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811084824.6A CN109271236A (en) | 2018-09-18 | 2018-09-18 | A kind of method, apparatus of traffic scheduling, computer storage medium and terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811084824.6A CN109271236A (en) | 2018-09-18 | 2018-09-18 | A kind of method, apparatus of traffic scheduling, computer storage medium and terminal |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109271236A true CN109271236A (en) | 2019-01-25 |
Family
ID=65189611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811084824.6A Pending CN109271236A (en) | 2018-09-18 | 2018-09-18 | A kind of method, apparatus of traffic scheduling, computer storage medium and terminal |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109271236A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110175073A (en) * | 2019-05-31 | 2019-08-27 | 杭州数梦工场科技有限公司 | Dispatching method, sending method, device and the relevant device of data exchange operation |
CN110515704A (en) * | 2019-08-30 | 2019-11-29 | 广东浪潮大数据研究有限公司 | Resource regulating method and device based on Kubernetes system |
CN111694646A (en) * | 2020-05-29 | 2020-09-22 | 北京百度网讯科技有限公司 | Resource scheduling method and device, electronic equipment and computer readable storage medium |
CN112799782A (en) * | 2021-01-20 | 2021-05-14 | 北京迈格威科技有限公司 | Model generation system, method, electronic device, and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103336714A (en) * | 2013-06-20 | 2013-10-02 | 北京奇虎科技有限公司 | Operation scheduling method and device |
CN104021044A (en) * | 2013-02-28 | 2014-09-03 | 中国移动通信集团浙江有限公司 | Job scheduling method and device |
CN105718316A (en) * | 2014-12-01 | 2016-06-29 | 中国移动通信集团公司 | Job scheduling method and apparatus |
CN107436801A (en) * | 2017-06-23 | 2017-12-05 | 努比亚技术有限公司 | I/O resource regulating methods, terminal and computer-readable recording medium |
-
2018
- 2018-09-18 CN CN201811084824.6A patent/CN109271236A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104021044A (en) * | 2013-02-28 | 2014-09-03 | 中国移动通信集团浙江有限公司 | Job scheduling method and device |
CN103336714A (en) * | 2013-06-20 | 2013-10-02 | 北京奇虎科技有限公司 | Operation scheduling method and device |
CN105718316A (en) * | 2014-12-01 | 2016-06-29 | 中国移动通信集团公司 | Job scheduling method and apparatus |
CN107436801A (en) * | 2017-06-23 | 2017-12-05 | 努比亚技术有限公司 | I/O resource regulating methods, terminal and computer-readable recording medium |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110175073A (en) * | 2019-05-31 | 2019-08-27 | 杭州数梦工场科技有限公司 | Dispatching method, sending method, device and the relevant device of data exchange operation |
CN110175073B (en) * | 2019-05-31 | 2022-05-31 | 杭州数梦工场科技有限公司 | Scheduling method, sending method, device and related equipment of data exchange job |
CN110515704A (en) * | 2019-08-30 | 2019-11-29 | 广东浪潮大数据研究有限公司 | Resource regulating method and device based on Kubernetes system |
CN110515704B (en) * | 2019-08-30 | 2023-08-04 | 广东浪潮大数据研究有限公司 | Resource scheduling method and device based on Kubernetes system |
CN111694646A (en) * | 2020-05-29 | 2020-09-22 | 北京百度网讯科技有限公司 | Resource scheduling method and device, electronic equipment and computer readable storage medium |
CN111694646B (en) * | 2020-05-29 | 2023-11-07 | 北京百度网讯科技有限公司 | Resource scheduling method, device, electronic equipment and computer readable storage medium |
CN112799782A (en) * | 2021-01-20 | 2021-05-14 | 北京迈格威科技有限公司 | Model generation system, method, electronic device, and storage medium |
CN112799782B (en) * | 2021-01-20 | 2024-04-12 | 北京迈格威科技有限公司 | Model generation system, method, electronic device and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9465663B2 (en) | Allocating resources in a compute farm to increase resource utilization by using a priority-based allocation layer to allocate job slots to projects | |
US9507631B2 (en) | Migrating a running, preempted workload in a grid computing system | |
US11243805B2 (en) | Job distribution within a grid environment using clusters of execution hosts | |
CN109271236A (en) | A kind of method, apparatus of traffic scheduling, computer storage medium and terminal | |
CA2722670C (en) | Scheduler instances in a process | |
US8869159B2 (en) | Scheduling MapReduce jobs in the presence of priority classes | |
WO2016078008A1 (en) | Method and apparatus for scheduling data flow task | |
US20150350313A1 (en) | Automated cloud workload management in a map-reduce environment | |
US10338970B2 (en) | Multi-platform scheduler for permanent and transient applications | |
US20110246994A1 (en) | Scheduling heterogeneous partitioned resources with sharing constraints | |
US20120096468A1 (en) | Compute cluster with balanced resources | |
US11150951B2 (en) | Releasable resource based preemptive scheduling | |
CN113454614A (en) | System and method for resource partitioning in distributed computing | |
JP2010533924A (en) | Scheduling by expanding and reducing resource allocation | |
EP4177751A1 (en) | Resource scheduling method, resource scheduling system, and device | |
CN113448743A (en) | Method, electronic device and computer program product for task processing | |
CN114168302A (en) | Task scheduling method, device, equipment and storage medium | |
CN113535411B (en) | Resource scheduling method, equipment and system | |
CN113301087B (en) | Resource scheduling method, device, computing equipment and medium | |
US10956228B2 (en) | Task management using a virtual node | |
CN116010020A (en) | Container pool management | |
US20210011848A1 (en) | Data processing for allocating memory to application containers | |
CN115509713A (en) | A task processing method, system device, electronic apparatus, and storage medium | |
Zhou | Real-Time SOA Using Flexible Advance Reservation |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190125 |