CN110515709B - Task scheduling system, method, device, electronic equipment and storage medium - Google Patents

Task scheduling system, method, device, electronic equipment and storage medium Download PDF

Info

Publication number
CN110515709B
CN110515709B CN201910677434.8A CN201910677434A CN110515709B CN 110515709 B CN110515709 B CN 110515709B CN 201910677434 A CN201910677434 A CN 201910677434A CN 110515709 B CN110515709 B CN 110515709B
Authority
CN
China
Prior art keywords
task
execution
server
executed
execution server
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
CN201910677434.8A
Other languages
Chinese (zh)
Other versions
CN110515709A (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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co 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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN201910677434.8A priority Critical patent/CN110515709B/en
Publication of CN110515709A publication Critical patent/CN110515709A/en
Application granted granted Critical
Publication of CN110515709B publication Critical patent/CN110515709B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Abstract

The disclosure relates to a task scheduling system, a method, a device, an electronic device and a computer readable storage medium, wherein the task scheduling system realizes task scheduling by the following steps: the scheduling server detects whether the execution time of the task to be executed is in the current period, and if so, the task is loaded to a delay queue of a target execution server group in a plurality of execution server groups; if the execution time of the task in the task database is not in the current period, adding the task to a task database, and loading the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period; executing the task through an execution server of the target execution server group. In the method, when one execution server is abnormal, other execution servers can execute the task which is being executed by the abnormal server, so that the execution failure of the task to be executed is avoided, and the execution efficiency is improved.

Description

Task scheduling system, method, device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a task scheduling system, method, apparatus, electronic device, and computer-readable storage medium.
Background
In a computer system, tasks to be executed are very commonly used, specifically, the tasks to be executed are tasks which are separated by a certain time period from task receiving to task executing, and related tasks or automatic reminding can be automatically executed or reminded through setting of the tasks to be executed, so that the tedious work of a user is reduced or the work of the user is facilitated.
The inventor finds that, in the process of researching the prior art, tasks to be executed are all deployed on a single execution machine, so that when an execution machine fails, the tasks to be executed are easy to fail to be executed, and even if the tasks to be executed are restarted, irreparable loss is brought to a user due to missing execution time.
Disclosure of Invention
To overcome the problems in the related art, the present disclosure provides a task scheduling system, method, apparatus, electronic device, and computer-readable storage medium.
According to a first aspect of the embodiments of the present disclosure, a task scheduling system is provided, where the task scheduling system includes a scheduling server and a plurality of execution server groups, each of the execution server groups is provided with a plurality of execution servers, and the task scheduling system implements task scheduling by:
The scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on execution requests sent by a task requesting party, and the execution requests carry the execution time of each task to be executed;
if the execution time corresponding to the task is detected to be in the current period, the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups;
if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period;
executing the task through an execution server of the target execution server group.
Optionally, the loading the task into the delay queue of the target execution server group includes:
determining a target execution server group corresponding to the task;
and adding the task to a delay queue of each execution server in the target execution server group.
Optionally, after the task is executed by the execution server of the target execution server group, the method further includes:
and if the task execution abnormity is detected, notifying other execution servers in the target execution server group to execute the task.
Optionally, the executing the task by the execution server of the target execution server group includes:
when the execution time of the task to be executed is reached, the execution server seizes the execution authority of the task;
and when the execution right is preempted, extracting the task to be executed from the delay queue and executing the task to be executed.
Optionally, the preempting, by the execution server, the execution authority of the task includes:
the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful;
alternatively, the first and second electrodes may be,
and the execution server modifies the state of the task in the task database into the executed state, and if the modification is successful, the preemption is successful.
Optionally, the executing the task to be executed includes:
and sending information to the task requester of the task to be executed.
Optionally, after the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups if it is detected that the execution time corresponding to the task is within the current period, the method further includes:
and storing the task to the task database.
According to a second aspect of the embodiments of the present disclosure, a task scheduling method is provided, where the task scheduling method is applied to a task scheduling system, the task scheduling system includes a scheduling server and a plurality of execution server groups, each of the execution server groups is provided with a plurality of execution servers, and the method includes:
the scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on execution requests sent by a task requesting party, and the execution requests carry the execution time of each task to be executed;
if the execution time corresponding to the task is detected to be in the current period, the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups;
if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period;
Executing the task through an execution server of the target execution server group.
Optionally, the loading the task into the delay queue of the target execution server group includes:
determining a target execution server group corresponding to the task;
and adding the task to a delay queue of each execution server in the target execution server group.
Optionally, after the task is executed by the execution server of the target execution server group, the method further includes:
and if the task execution abnormity is detected, informing other execution servers in the target execution server group to execute the task.
Optionally, the executing the task by the execution server of the target execution server group includes:
the execution server seizes the execution authority of the task;
and when the execution right is preempted, extracting the task to be executed from the delay queue and executing the task to be executed.
Optionally, the preempting, by the execution server, the execution authority of the task includes:
the execution server modifies the state of the task in the task database into an executed state, and if the modification is successful, the preemption is successful;
Alternatively, the first and second liquid crystal display panels may be,
and the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful.
Optionally, the executing the task to be executed includes:
and sending information to the task requester of the task to be executed.
Optionally, after the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups if it is detected that the execution time corresponding to the task is within the current period, the method further includes:
and storing the task to the task database.
According to a third aspect of the embodiments of the present disclosure, there is provided a task scheduling apparatus applied to a task scheduling system, where the task scheduling system includes a scheduling server and a plurality of execution server groups, each of the execution server groups is provided with a plurality of execution servers, the apparatus includes:
a detection module configured to perform: the scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on the execution request sent by a task requesting party, and the execution request carries the execution time of each task to be executed;
The loading module is configured to load the task into a delay queue of a target execution server group in a plurality of execution server groups if the execution time corresponding to the task is detected to be in the current period;
the adding module is configured to add the task to a task database by the scheduling server if the execution time corresponding to the task is detected not to be in the current period, and load the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period;
an execution module configured to execute the task by an execution server of the target execution server group.
Optionally, the loading module includes:
a determination submodule configured to perform determining a target execution server group corresponding to the task;
an adding submodule configured to perform adding the task to a delay queue of each execution server in the target execution server group.
Optionally, the apparatus further comprises:
and the notification module is configured to notify other execution servers in the target execution server group to execute the task if the task execution abnormity is detected.
Optionally, the execution module includes:
a preemption submodule configured to execute the execution server to preempt the execution authority of the task;
and the execution submodule is configured to extract the task to be executed from the delay queue and execute the task to be executed when the execution right is preempted.
Optionally, the preemption submodule includes:
a first preemption unit configured to perform: the execution server modifies the state of the task in the task database into an executed state, and if the modification is successful, the preemption is successful;
alternatively, the first and second electrodes may be,
a second preemption unit configured to perform: and the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful.
Optionally, the execution submodule includes:
and the information sending unit is configured to send information to the task requester of the task to be executed.
Optionally, the apparatus further comprises:
a storage module configured to perform storing the task to the task database.
According to a fourth aspect of the embodiments of the present disclosure, there is provided an electronic apparatus including:
A processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the task scheduling method according to the second aspect.
According to a fifth aspect of embodiments of the present disclosure, there is provided a readable storage medium, wherein instructions, when executed by a processor of an electronic device, enable the electronic device to perform the task scheduling method according to the second aspect.
The technical scheme provided by the embodiment of the disclosure at least brings the following beneficial effects:
in the embodiment of the invention, a scheduling server detects whether the execution time of a task to be executed is in a current period, and if the execution time corresponding to the task is detected to be in the current period, the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups; if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period; executing the task through an execution server of the target execution server group. In the above method, because the scheduling server loads the task into the delay queue of the target execution server group, and executes the task through the execution server of the target execution server group. Therefore, when one execution server is abnormal, other execution servers can execute the task which is being executed by the abnormal server, the execution failure of the task to be executed is avoided, and the execution efficiency is improved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
FIG. 1 is a block diagram illustrating a task scheduling system in accordance with an exemplary embodiment;
FIG. 2 is a diagram illustrating a task scheduling system implementing task scheduling in accordance with an exemplary embodiment;
FIG. 3 is one of the flow diagrams illustrating a method of task scheduling in accordance with an exemplary embodiment;
FIG. 4 is a second flowchart illustrating a method of task scheduling in accordance with an exemplary embodiment;
FIG. 5 is an interaction diagram illustrating a method of task scheduling in accordance with an exemplary embodiment;
FIG. 6 is one of the block diagrams of a task scheduler shown in accordance with an exemplary embodiment;
FIG. 7 is a second block diagram illustrating a task scheduler, according to an exemplary embodiment;
fig. 8 is a block diagram showing an electronic apparatus (general structure of a mobile terminal) according to an exemplary embodiment.
Fig. 9 is a block diagram (general structure of a server) showing an electronic apparatus according to an exemplary embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
FIG. 1 is a block diagram illustrating a task scheduling system in accordance with an exemplary embodiment. The task scheduling system comprises a scheduling server S1, a plurality of execution server groups Q1, Q2 … … Qn and a task database D1, wherein a plurality of execution servers are arranged in each execution server group. As shown in FIG. 1, dispatch server S1 is communicatively coupled to executive servers 001, 002, 003, 004, 005, 006, where executive servers 001, 002, 003 form an executive server group Q1 and executive servers 004, 005, 006 form an executive server group Q2. dispatch server S1 may assign the same tasks to be performed to the executive servers belonging to the same executive server group.
Meanwhile, the scheduling server S1 is communicatively connected to the task database D1, and when the scheduling server S1 detects that the execution time corresponding to the received to-be-executed task is not in the current period, the scheduling server S1 adds the to-be-executed task to the task database D1, and loads the task to the delay queue of the target execution server group when the execution time of the task in the task database D1 is in the current period.
By setting the execution server group, the execution servers of the same execution server group execute the same task, so that the scheduling server can not distribute the same task to all the execution servers of the distributed system any more, and the waste of channel resources and the repeated execution of the task are avoided; meanwhile, one execution server group comprises a plurality of execution servers, when a certain execution server fails in the process of executing the current task, other execution servers in the same group can execute the current task again, and the situation that the current task is not executed by people is avoided.
FIG. 2 is a diagram illustrating a task scheduling system implementing task scheduling in accordance with an exemplary embodiment. Specifically, as shown in fig. 2, the scheduling server S1 determines whether the execution time of the task to be executed is within the current period, and if it is detected that the execution time corresponding to the task is within the current period, the scheduling server S1 loads the task into the delay queues of the execution servers 001, 002, and 003 in the target execution server group Q1; if the execution time corresponding to the task is not detected in the current period, the scheduling server S1 adds the task to the task database D1.
Fig. 3 is one of flowcharts illustrating a task scheduling method applied to a task scheduling system including a scheduling server and a plurality of execution server groups, each of the execution server groups having a plurality of execution servers disposed therein according to an exemplary embodiment. As shown in fig. 3, the method includes:
in step S101, the scheduling server detects whether an execution time of a to-be-executed task is within a current period, where the to-be-executed task is generated based on an execution request sent by a task requester, and the execution request carries the execution time of each to-be-executed task.
In the embodiment of the invention, a distributed task execution system to be executed is constructed firstly. The system consists of a scheduling server and a plurality of execution servers, wherein the execution servers can be managed by the scheduling server in a global mode, and tasks are dynamically allocated to the execution servers; the multiple execution servers form multiple execution server groups, and the scheduling server may allocate the same task to the execution servers in the same execution server group. The execution servers in the same execution server group can be located in different geographic positions and network environments, and information exchange is realized through a computer network. The distributed setting of the execution servers can reduce the probability that the execution servers in the same execution server group simultaneously fail.
The scheduling server receives a task to be executed sent by a task requesting party, the task to be executed carries execution time, a target time period is arranged between the task receiving time and the execution time, and the target time period is preset in the task to be executed. For example, if the customer does not pay within 30 minutes after submitting the merchant's order, the merchant needs to cancel the order. The merchant wants the distributed task execution system to remind the consumer of canceling the order at an interval of 30 minutes after the consumer submits the order, and then the merchant sends the task to be executed to remind the consumer of canceling the order after 30 minutes when the consumer submits the order to the scheduling server. The merchant is a task requester, and the task to be executed is as follows: the merchant is prompted 30 minutes after receiving the task to cancel the customer's order.
The scheduling server presets cycle time, and after receiving the task to be executed, firstly detects whether the execution time carried in the task to be executed is in the current cycle.
In step S102, if it is detected that the execution time corresponding to the task is within the current period, the scheduling server loads the task into a delay queue of a target execution server group of the plurality of execution server groups.
In the embodiment of the invention, the scheduling server determines whether to load the task to the delay queue of the execution server according to the execution time corresponding to the task. Specifically, whether the execution time corresponding to the task is within the current period is judged, if the execution time of the task is within the current period, the task is taken as an 'emergency task', a target execution server group is selected, and the task is loaded into a delay queue corresponding to each execution server in the target execution server group. All tasks with execution time in the current period are stored in the delay queue.
Optionally, after step S102, the method further includes:
and storing the task to the task database.
After loading the task to be executed with the execution time in the current period into the delay queue, the scheduling server also stores the task into the task database so as to facilitate the execution server to execute the task in the task data. The task database comprises a data table, each delay task can be stored in a data form, and each delay task can comprise task content, receiving time, execution state and the like.
In step S103, if it is detected that the execution time corresponding to the task is not within the current period, the scheduling server adds the task to a task database, and loads the task to the delay queue of the target execution server group when the execution time of the task in the task database is within the current period.
In the embodiment of the invention, if the execution time of the task to be executed is detected not to be in the current period, the scheduling server adds the task to the task database. All executed and unexecuted tasks to be executed are stored in the task database. The task database comprises a data table, each task to be executed can be stored in a data form, and each task to be executed can comprise task content, receiving time, execution state and other content.
Further, the scheduling server scans the tasks to be executed in the task database at regular intervals, and loads the tasks to be executed, which need to be executed in the current period, into the delay queue of the target execution server group.
In summary, when a new task is received, the scheduling server first determines the execution time of the task, and if the task is in the current period, the task is directly loaded into the delay queue of the execution server, so that the execution server executes the task on time. If not, the new task is directly loaded to the task database, when the server executes the task in the task database next round, a period is passed, and for the new task with the execution time in the current period, the corresponding execution time point is missed. Therefore, the scheme can avoid the situation that the new task with the execution time in the current period misses the execution time point.
In step S104, the task is executed by the execution server of the target execution server group.
In the embodiment of the invention, once the execution time of the task to be executed is reached, the execution server of the target execution server group extracts the task to be executed from the delay queue of the execution server and executes the task in the task database. Specifically, the execution server performs modification operation on the database in the task database according to the task content and the execution method.
In summary, in the embodiment of the present invention, a scheduling server detects whether an execution time of a task to be executed is within a current period, and if it is detected that the execution time corresponding to the task is within the current period, the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups; if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period; executing the task through an execution server of the target execution server group. In the method, the task is loaded into the delay queue of the target execution server group by the scheduling server, and the task is executed by the execution server of the target execution server group. Therefore, when one execution server is abnormal, other execution servers can execute the task which is being executed by the abnormal server, the execution failure of the task to be executed is avoided, and the execution efficiency is improved.
FIG. 4 is a second flowchart illustrating a method of task scheduling, according to an example embodiment. The task scheduling method is applied to a task scheduling system, the task scheduling system comprises a scheduling server and a plurality of execution server groups, and a plurality of execution servers are arranged in each execution server group. As shown in fig. 4, the method includes:
in step S201, the scheduling server detects whether the execution time of the to-be-executed task is within a current period, where the to-be-executed task is generated based on an execution request sent by a task requester, and the execution request carries the execution time of each to-be-executed task.
In the embodiment of the present invention, step S201 may refer to step S101, and details are not described here.
In step S202, if it is detected that the execution time corresponding to the task is not within the current period, the scheduling server adds the task to a task database, and loads the task to the delay queue of the target execution server group when the execution time of the task in the task database is within the current period.
In the embodiment of the present invention, step S202 may refer to step S102, which is not described herein again.
Optionally, the loading the task into the delay queue of the target execution server group includes the following steps a1 to a step a 2:
in step a1, a target execution server group corresponding to the task is determined.
In the embodiment of the invention, after the task is added to the task database, the scheduling server checks the execution time of the task, and if the execution time is in the current period, one execution server group is selected as a target execution server group to execute the task.
In step a2, the task is added to the latency queue of each execution server in the target execution server group.
Specifically, the scheduling server adds the task to a delay queue corresponding to each execution server in the target execution server group, where the delay queue is located in a memory of the execution server. The task content contained in the delay queue of each execution server in the set of target execution servers is the same.
The embodiment of the invention distributes the tasks according to the execution server group, improves the distribution efficiency compared with the mode of distributing the tasks to all the execution servers, and avoids the resource waste caused by loading the tasks in the delay queues by all the execution servers.
In step S203, when the execution time of the task to be executed is reached, the execution server preempts the execution permission of the task.
Because there are multiple execution servers, in order to avoid repeated execution caused by multiple execution servers executing the same task when the execution time is reached, all execution servers in the target execution server group can be controlled to preempt the permission to execute the task, and the task can be executed only by the execution server acquiring the permission to execute the task. In this way, multiple execution servers are prevented from repeatedly performing the same task.
Optionally, the preempting, by the execution server, the execution right of the task includes the following step A3 or step a 4:
in step a3, the execution server reads the task state data in the task database, and if the status indicated in the read task state data is not executed, the preemption is successful.
In the embodiment of the present invention, the permission to preempt the execution task may be to preempt a row lock of a row in which the task to be executed in the preset target database is located, and if the row lock of a certain row is preempted by a certain execution server, other execution servers cannot operate the row.
For MySQL databases, the row lock is loaded through the index, i.e., the row lock is added to the row in the index response. Line locks are divided into shared locks and exclusive locks. When a transaction shares a lock on some row, other transactions are allowed to read the row but not write, or other transactions are not allowed to give exclusive locks on the row but are allowed to share the lock; exclusive locks are also called write locks, and when a transaction is exclusive to a certain number of locks, no other transactions are allowed to write, but read, and no other transactions are allowed to give any lock on the certain number of locks, including exclusive locks. The row lock described in the embodiment of the present invention may include any one of a shared lock and an exclusive lock, and the embodiment of the present invention is not particularly limited. Specifically, the execution server preempts the row lock of the row where the task to be executed is located, that is, a shared lock or an exclusive lock on the row. For example, the write method for the upper shared lock may be: lock in share mode; the write method of the upper exclusive lock may be: for update.
If the execution server preempts the line lock, the line can be locked, and other execution servers are prevented from executing the task, so that from the result, as long as the task state read by the execution server is not executed, the preemption authority is successful.
In step a4, the execution server modifies the state of the task in the task database to be executed, and if the modification is successful, the preemption is successful.
Specifically, executing the task to be executed is to modify the execution state of the task line to be executed in the task database to be "executed" and send a message to the task requester. If the execution server preempts the line lock, the execution state of the task in the to-be-executed task line may be modified from "not executed" to "executed", and from the execution result, if the execution state is modified successfully, it indicates that the execution server preempts the execution permission successfully.
In step S204, when the execution right is preempted, the to-be-executed task is extracted from the delay queue, and the to-be-executed task is executed.
In the embodiment of the invention, if the execution server preempts the execution authority, the task to be executed is extracted from the delay queue of the execution server, and the task is executed in the task database. Specifically, the execution server performs modification operation on the database in the task database according to the task content and the execution method.
Optionally, the executing the task to be executed includes:
And sending information to the task requester of the task to be executed.
In the embodiment of the present invention, the task to be executed may be a task that prompts the task requester to execute corresponding work, that is, information is sent to the task requester of the task to be executed. In this case, the execution server firstly modifies the task state of the row in which the task is located in the preset target database to be 'executed', and then sends a reminding message to the task requester. For example: for a task to be executed, which is to remind the merchant to cancel the order 30 minutes after receiving the task, the execution server modifies the task state of the row of the task in the preset target database to be 'executed' when the execution time arrives, and sends a reminding message to the merchant, where the message content may be: the customer has not paid for the order within 30 minutes and can now cancel the order.
Optionally, after step S204, the method further includes:
and if the state of the task to be executed is successfully modified but the information is unsuccessfully sent, modifying the state of the task to be executed into unexecuted state.
In the embodiment of the present invention, if an exception occurs in the execution server during the task execution process, for example, a downtime, a dead halt, or a power failure occurs, before the exception occurs, the execution server has modified the state of the task to be executed, but has not sent information to the task requester, which is equivalent to that the task has not been executed, and at this time, the task state needs to be rolled back, that is, the state of the task to be executed is restored to unexecuted.
Optionally, the sending information to the task requester of the task to be executed includes: and sending a kafka message to the task requester of the task to be executed.
In the embodiment of the invention, kafka (distributed publish-subscribe message system) messages have the advantages of asynchrony and decoupling, wherein asynchrony means that a message sender and a message receiver can not be online at the same time, so that the message sender and the message receiver are decoupled, namely the coupling of the message sender and the message receiver is reduced. Therefore, when the execution server sends a message to the task requester, the message can be successfully sent regardless of whether the task requester is online or not, and the message sent by the execution server can be received as long as the task requester is online within a preset time period.
In step S205, if the task execution abnormality is detected, other execution servers in the target execution server group are notified to execute the task.
In the embodiment of the invention, the scheduling server can automatically sense the state and the working condition of each execution server connected with the scheduling server. When the execution server is abnormal, such as downtime, dead halt or power failure, the scheduling server can sense in time.
If the execution server is abnormal and can not execute the current task any more, the scheduling server informs other execution servers in the target execution server group to execute the task which is executed by the abnormal execution server. Specifically, the scheduling server may release the current task of the abnormal server, set the task as a task to be executed in the next second, and allocate another execution server to execute the task.
Optionally, the step S204 specifically includes the following steps a5 to a step a 6:
in step a5, a task having an execution time within and before the current cycle is determined.
In the embodiment of the invention, the scheduling server calls all the tasks with the execution time within the current period and before the current period to determine which of the tasks are executed by the abnormal server.
In step a 6: and if the last execution authority of the task is acquired by the execution server, informing the other execution servers to execute the task.
The task being executed by the abnormal server is determined by acquiring whether the last execution authority of the task belongs to the abnormal server, and if the last execution authority belongs to the abnormal server, the task is executed by the abnormal server. Then, to ensure that the task can continue execution, the scheduling server notifies the other execution servers to execute the task again.
In summary, the task scheduling system in the embodiment of the present invention has the beneficial effects that the task scheduling system in fig. 3 has, in addition, in the embodiment of the present invention, when the execution time of the to-be-executed task is reached, the execution server preempts the execution right of the task, and when the execution right is preempted, the to-be-executed task is extracted from the delay queue and executed. According to the method, the execution server can execute the task only when acquiring the execution permission, so that the phenomenon that a plurality of execution servers execute the same task repeatedly is avoided, and the execution efficiency is improved.
FIG. 5 is an interaction diagram illustrating a method of task scheduling in accordance with an exemplary embodiment. The terminal included in the task scheduling method comprises a scheduling server, a target execution server group and a task database. As shown in fig. 5, the task scheduling method includes:
step 301, the scheduling server detects whether the execution time of the task to be executed is within the current period.
The scheduling server presets cycle time, and after receiving the task to be executed, firstly detects whether the execution time carried in the task to be executed is in the current cycle.
Step 302, if in the current period, the scheduling server loads the task into the delay queue of the target execution server group.
And the scheduling server judges whether the execution time corresponding to the task is in the current period, if the execution time of the task is in the current period, the task is taken as an 'emergency task', a target execution server group is selected, and the task is loaded into a delay queue corresponding to each execution server in the target execution server group.
And 303, if the current period is not within the period, the scheduling server adds the task to a task database.
And if the execution time of the task to be executed is detected not to be in the current period, the scheduling server adds the task to the task database.
And 304, loading the task into a delay queue of the target execution server group by the scheduling server under the condition that the execution time of the task in the task database is in the current period.
The scheduling server scans the tasks to be executed in the task database at regular intervals, and loads the tasks to be executed, which need to be executed in the current period, into the delay queue of the target execution server group.
Step 305, the execution server of the target execution server group executes the task.
Once the execution time of the task to be executed is reached, the execution server of the target execution server group extracts the task to be executed from the delay queue of the execution server and executes the task in the task database.
In summary, in the embodiment of the present invention, a scheduling server detects whether an execution time of a task to be executed is within a current period, and if it is detected that the execution time corresponding to the task is within the current period, the scheduling server loads the task to a delay queue of a target execution server group in a plurality of execution server groups; if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period; executing the task through an execution server of the target execution server group. In the above method, because the scheduling server loads the task into the delay queue of the target execution server group, and executes the task through the execution server of the target execution server group. Therefore, when one execution server is abnormal, other execution servers can execute the task which is being executed by the abnormal server, the execution failure of the task to be executed is avoided, and the execution efficiency is improved.
FIG. 6 is one of the block diagrams illustrating a task scheduler according to an example embodiment. The task scheduling device 400 is applied to a task scheduling system, the task scheduling system includes a scheduling server and a plurality of execution server groups, each of the execution server groups is provided with a plurality of execution servers, the device 400 includes:
a detection module 401 configured to perform: the scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on execution requests sent by a task requesting party, and the execution requests carry the execution time of each task to be executed;
a loading module 402, configured to load the task into a delay queue of a target execution server group in a plurality of execution server groups if it is detected that the execution time corresponding to the task is within the current period;
an adding module 403, configured to execute, if it is detected that the execution time corresponding to the task is not within the current period, the scheduling server adding the task to a task database, and loading the task to a delay queue of the target execution server group when the execution time of the task in the task database is within the current period;
An execution module 404 configured to execute the task by an execution server of the target execution server group.
With regard to the task scheduling device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment related to the method, and will not be elaborated here.
Alternatively, referring to fig. 7, a second block diagram of the task scheduling device is shown on the basis of fig. 6. Wherein the loading module 402 comprises:
a determination submodule 4021 configured to perform determination of a target execution server group corresponding to the task;
an adding sub-module 4022 configured to add the task to the delay queue of each execution server in the target execution server group.
The device further comprises:
a notification module 405 configured to notify other execution servers in the target execution server group to execute the task if the task execution exception is detected.
The execution module 404 includes:
a preemption submodule 4041 configured to execute the execution authority of the execution server to preempt the task;
and the execution sub-module 4042 is configured to extract the task to be executed from the delay queue and execute the task to be executed when the execution right is preempted.
The preemption submodule 4041 includes:
a first preemption unit configured to perform: the execution server modifies the state of the task in the task database into an executed state, and if the modification is successful, the preemption is successful;
alternatively, the first and second electrodes may be,
a second preemption unit configured to perform: and the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful.
The execution sub-module 4042 includes:
and the information sending unit is configured to send information to the task requester of the task to be executed.
The apparatus 400 further comprises:
a storage module 406 configured to perform storing the task to the task database.
With regard to the task scheduling device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment related to the method, and will not be elaborated here.
With regard to the task scheduling device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment related to the method, and will not be elaborated here.
FIG. 8 is a block diagram illustrating an electronic device 500 for task scheduling in accordance with an illustrative embodiment. For example, the electronic device 500 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, an exercise device, a personal digital assistant, and the like.
Referring to fig. 8, electronic device 500 may include one or more of the following components: a processing component 502, a memory 504, a power component 506, a multimedia component 508, an audio component 510, an input/output (I/O) interface 512, a sensor component 514, and a communication component 516.
The processing component 502 generally controls overall operation of the electronic device 500, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing components 502 may include one or more processors 520 to execute instructions to perform all or a portion of the steps of the methods described above. Further, the processing component 502 can include one or more modules that facilitate interaction between the processing component 502 and other components. For example, the processing component 502 can include a multimedia module to facilitate interaction between the multimedia component 508 and the processing component 502.
The memory 504 is configured to perform the storage of various types of data to support the operations at the device 500. Examples of such data include instructions for any application or method operating on the electronic device 500, contact data, phonebook data, messages, pictures, videos, and so forth. The memory 504 may be implemented by any type or combination of volatile or non-volatile memory devices such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks.
The power supply component 506 provides power to the various components of the electronic device 500. The power components 506 may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for the electronic device 500.
The multimedia component 508 includes a screen that provides an output interface between the electronic device 500 and a user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 508 includes a front facing camera and/or a rear facing camera. The front-facing camera and/or the rear-facing camera may receive external multimedia data when the device 500 is in an operating mode, such as a shooting mode or a video mode. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
The audio component 510 is configured to perform outputting and/or inputting audio signals. For example, the audio component 510 includes a Microphone (MIC) configured to perform receiving external audio signals when the electronic device 500 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals may further be stored in the memory 504 or transmitted via the communication component 516. In some embodiments, audio component 510 further includes a speaker for outputting audio signals.
The I/O interface 512 provides an interface between the processing component 502 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor assembly 514 includes one or more sensors for providing various aspects of status assessment for the electronic device 500. For example, the sensor assembly 514 may detect an open/closed state of the device 500, the relative positioning of components, such as a display and keypad of the electronic device 500, the sensor assembly 514 may detect a change in the position of the electronic device 500 or a component of the electronic device 500, the presence or absence of user contact with the electronic device 500, orientation or acceleration/deceleration of the electronic device 500, and a change in the temperature of the electronic device 500. The sensor assembly 514 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 514 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 514 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component 516 is configured to perform communications that facilitate wired or wireless means between the electronic device 500 and other devices. The electronic device 500 may access a wireless network based on a communication standard, such as WiFi, a carrier network (such as 2G, 3G, 4G, or 5G), or a combination thereof. In an exemplary embodiment, the communication component 516 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 516 further includes a Near Field Communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the electronic device 500 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors or other electronic components for performing the above-described methods.
In an exemplary embodiment, a non-transitory computer-readable storage medium comprising instructions, such as the memory 504 comprising instructions, executable by the processor 520 of the electronic device 500 to perform the above-described method is also provided. For example, the non-transitory computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
FIG. 9 is a block diagram illustrating an electronic device 600 for task scheduling in accordance with an exemplary embodiment. For example, the electronic device 600 may be provided as a server. Referring to fig. 9, electronic device 600 includes a processing component 622 that further includes one or more processors, and memory resources, represented by memory 632, for storing instructions, such as applications, that are executable by processing component 622. The application programs stored in memory 632 may include one or more modules that each correspond to a set of instructions. Further, the processing component 622 is configured to execute instructions to perform the audio playback method and the audio data transmission method described above.
The electronic device 600 may also include a power component 626 configured to perform power management for the electronic device 600, a wired or wireless network interface 650 configured to perform connecting the electronic device 600 to a network, and an input/output (I/O) interface 656. The electronic device 600 may operate based on an operating system stored in the memory 632, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, or the like.
In an exemplary embodiment, a computer program product is also provided, which comprises readable program code executable by the processing component 622 of the electronic device 600 to perform the above-described method. Alternatively, the program code may be stored in a storage medium of the electronic device 600, which may be a non-transitory computer-readable storage medium, such as a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.
It will be understood that the invention is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the invention is limited only by the appended claims.

Claims (20)

1. A task scheduling system is characterized by comprising a scheduling server and a plurality of execution server groups, wherein each execution server group is internally provided with a plurality of execution servers, and the task scheduling system realizes task scheduling through the following steps:
the scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on execution requests sent by a task requesting party, and the execution requests carry the execution time of each task to be executed;
If the execution time corresponding to the task is detected to be in the current period, the scheduling server loads the task to a delay queue of each execution server in a target execution server group in a plurality of execution server groups;
if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period;
executing the task by an execution server of the target execution server group;
and if the task execution abnormity is detected, notifying other execution servers in the target execution server group to execute the task.
2. The system of claim 1, wherein loading the task into the delay queue of the target execution server group comprises:
determining a target execution server group corresponding to the task;
and adding the task to a delay queue of each execution server in the target execution server group.
3. The system according to any of claims 1-2, wherein the performing the task by the execution server of the target execution server group comprises:
When the execution time of the task to be executed is reached, the execution server seizes the execution authority of the task;
and when the execution right is preempted, extracting the task to be executed from the delay queue and executing the task to be executed.
4. The system of claim 3, wherein preempting the execution right of the task by the execution server comprises:
the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful;
alternatively, the first and second liquid crystal display panels may be,
and the execution server modifies the state of the task in the task database into the executed state, and if the modification is successful, the preemption is successful.
5. The system of claim 3, wherein the performing the task to be performed comprises:
and sending information to the task requester of the task to be executed.
6. The system according to any one of claims 1-2, wherein after the scheduling server loads the task into a delay queue of a target execution server group of the plurality of execution server groups if it is detected that the execution time corresponding to the task is within the current period, the method further comprises:
And storing the task to the task database.
7. A task scheduling method is applied to a task scheduling system, the task scheduling system comprises a scheduling server and a plurality of execution server groups, each execution server group is internally provided with a plurality of execution servers, and the method comprises the following steps:
the scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on execution requests sent by a task requesting party, and the execution requests carry the execution time of each task to be executed;
if the execution time corresponding to the task is detected to be in the current period, the scheduling server loads the task to a delay queue of each execution server in a target execution server group in a plurality of execution server groups;
if the execution time corresponding to the task is not detected in the current period, the scheduling server adds the task to a task database, and loads the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period;
Executing the task by an execution server of the target execution server group;
and if the task execution abnormity is detected, notifying other execution servers in the target execution server group to execute the task.
8. The method of claim 7, wherein loading the task into the delay queue of the target execution server group comprises:
determining a target execution server group corresponding to the task;
and adding the task to a delay queue of each execution server in the target execution server group.
9. The method of any of claims 7-8, wherein the performing the task by an execution server of the set of target execution servers comprises:
the execution server seizes the execution authority of the task;
and when the execution right is preempted, extracting the task to be executed from the delay queue and executing the task to be executed.
10. The method of claim 9, wherein preempting the execution authority of the task by the execution server comprises:
the execution server modifies the state of the task in the task database into an executed state, and if the modification is successful, the preemption is successful;
Alternatively, the first and second liquid crystal display panels may be,
and the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful.
11. The method of claim 9, wherein the performing the task to be performed comprises:
and sending information to the task requester of the task to be executed.
12. The method according to any one of claims 7 to 8, wherein after the scheduling server loads the task into a delay queue of a target execution server group of a plurality of execution server groups if it is detected that the execution time corresponding to the task is within the current period, the method further includes:
and storing the task to the task database.
13. A task scheduling device is applied to a task scheduling system, the task scheduling system comprises a scheduling server and a plurality of execution server groups, each execution server group is internally provided with a plurality of execution servers, and the device comprises:
a detection module configured to perform: the scheduling server detects whether the execution time of the tasks to be executed is within the current period, wherein the tasks to be executed are generated based on execution requests sent by a task requesting party, and the execution requests carry the execution time of each task to be executed;
The loading module is configured to load the task into a delay queue of each execution server in a target execution server group in a plurality of execution server groups if the execution time corresponding to the task is detected to be in the current period;
the adding module is configured to add the task to a task database by the scheduling server if the execution time corresponding to the task is detected not to be in the current period, and load the task to a delay queue of the target execution server group under the condition that the execution time of the task in the task database is in the current period;
an execution module configured to execute the task by an execution server of the target execution server group;
and the notification module is configured to notify other execution servers in the target execution server group to execute the task if the task execution abnormity is detected.
14. The apparatus of claim 13, wherein the loading module comprises:
a determination submodule configured to perform determining a target execution server group corresponding to the task;
an adding submodule configured to perform adding the task to a delay queue of each execution server in the target execution server group.
15. The apparatus according to any one of claims 13-14, wherein the execution module comprises:
a preemption submodule configured to execute the execution server to preempt the execution authority of the task;
and the execution submodule is configured to extract the task to be executed from the delay queue and execute the task to be executed when the execution right is preempted.
16. The apparatus of claim 15, wherein the preemption submodule comprises:
a first preemption unit configured to perform: the execution server modifies the state of the task in the task database into an executed state, and if the modification is successful, the preemption is successful;
alternatively, the first and second electrodes may be,
a second preemption unit configured to perform: and the execution server reads the task state data in the task database, and if the indication state in the read task state data is not executed, the preemption is successful.
17. The apparatus of claim 15, wherein the execution submodule comprises:
and the information sending unit is configured to send information to the task requester of the task to be executed.
18. The apparatus of any of claims 13-14, further comprising:
A storage module configured to perform storing the task to the task database.
19. An electronic device, comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the task scheduling method of any one of claims 7 to 12.
20. A readable storage medium, wherein instructions in the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the task scheduling method of any of claims 7 to 12.
CN201910677434.8A 2019-07-25 2019-07-25 Task scheduling system, method, device, electronic equipment and storage medium Active CN110515709B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910677434.8A CN110515709B (en) 2019-07-25 2019-07-25 Task scheduling system, method, device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910677434.8A CN110515709B (en) 2019-07-25 2019-07-25 Task scheduling system, method, device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN110515709A CN110515709A (en) 2019-11-29
CN110515709B true CN110515709B (en) 2022-06-10

Family

ID=68624035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910677434.8A Active CN110515709B (en) 2019-07-25 2019-07-25 Task scheduling system, method, device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110515709B (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111209112A (en) * 2019-12-31 2020-05-29 杭州迪普科技股份有限公司 Exception handling method and device
CN111258728A (en) * 2020-01-09 2020-06-09 浙江大搜车软件技术有限公司 Task execution method and device, storage medium and electronic device
CN113538716B (en) * 2020-03-31 2022-11-11 武汉巴别塔科技有限公司 Parking information processing method, storage medium and electronic device
CN111611066A (en) * 2020-06-30 2020-09-01 平安银行股份有限公司 Task execution method, task execution server, and storage medium
CN112148442B (en) * 2020-08-06 2023-07-21 武汉达梦数据库股份有限公司 ETL flow scheduling method and device
CN112561264A (en) * 2020-12-04 2021-03-26 中广核工程有限公司 Service method, service system and storage medium for enterprise content
CN112199201B (en) * 2020-12-09 2021-03-16 深圳市房多多网络科技有限公司 Delayed task processing method, device and equipment
CN112685157B (en) * 2020-12-29 2024-04-02 武汉安辰鑫信息科技有限公司 Task processing method, device, computer equipment and storage medium
CN113094160A (en) * 2021-03-22 2021-07-09 北京达佳互联信息技术有限公司 Service scheduling method, device, electronic equipment and storage medium
CN113254184A (en) * 2021-06-11 2021-08-13 中移(杭州)信息技术有限公司 Task scheduling method, device, scheduling system and storage medium
CN115809133A (en) * 2022-12-13 2023-03-17 北京领雁科技股份有限公司 Distributed scheduling system, method, electronic device, and computer-readable medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101465768A (en) * 2009-01-12 2009-06-24 上海及第熊软件科技有限公司 Method and system for implementing website disaster-tolerating and error-tolerating operation
CN102496915A (en) * 2011-11-29 2012-06-13 航天科工深圳(集团)有限公司 Power distribution network fault processing method and system thereof
CN102855470A (en) * 2012-07-31 2013-01-02 中国科学院自动化研究所 Estimation method of human posture based on depth image
CN102891868A (en) * 2011-07-19 2013-01-23 上海可鲁系统软件有限公司 Load balancing method and device for distributed system
CN103577256A (en) * 2013-11-21 2014-02-12 五八同城信息技术有限公司 Distributed timed task dispatching system
CN105389206A (en) * 2015-11-02 2016-03-09 广东石油化工学院 Method for rapidly configuring virtual machine resources in cloud computing data center
CN105634832A (en) * 2016-03-16 2016-06-01 浙江宇视科技有限公司 Server backup method and device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101465768A (en) * 2009-01-12 2009-06-24 上海及第熊软件科技有限公司 Method and system for implementing website disaster-tolerating and error-tolerating operation
CN102891868A (en) * 2011-07-19 2013-01-23 上海可鲁系统软件有限公司 Load balancing method and device for distributed system
CN102496915A (en) * 2011-11-29 2012-06-13 航天科工深圳(集团)有限公司 Power distribution network fault processing method and system thereof
CN102855470A (en) * 2012-07-31 2013-01-02 中国科学院自动化研究所 Estimation method of human posture based on depth image
CN103577256A (en) * 2013-11-21 2014-02-12 五八同城信息技术有限公司 Distributed timed task dispatching system
CN105389206A (en) * 2015-11-02 2016-03-09 广东石油化工学院 Method for rapidly configuring virtual machine resources in cloud computing data center
CN105634832A (en) * 2016-03-16 2016-06-01 浙江宇视科技有限公司 Server backup method and device

Also Published As

Publication number Publication date
CN110515709A (en) 2019-11-29

Similar Documents

Publication Publication Date Title
CN110515709B (en) Task scheduling system, method, device, electronic equipment and storage medium
CN110650129A (en) Account login method and device and computer readable storage medium
CN113220482A (en) Call request processing method and device, electronic equipment and storage medium
CN113238763A (en) Application deployment method, device, storage medium and program product
CN112291631A (en) Information acquisition method, device, terminal and storage medium
JP7109556B2 (en) Trigger holding method and trigger holding device
CN110690979B (en) Group message processing method, device, server, client and storage medium
CN109586951B (en) Method, device, electronic equipment and readable storage medium for implementing fault transfer
CN110908814A (en) Message processing method and device, electronic equipment and storage medium
CN113407316A (en) Service scheduling method and device, electronic equipment and storage medium
CN111723353A (en) Identity authentication method, device, terminal and storage medium based on face recognition
CN114430410A (en) System access method, device and equipment based on virtual domain name
CN112883073B (en) Data screening method, device, equipment, readable storage medium and product
CN114066370A (en) Inventory service calling method, device, equipment, storage medium and program product
CN109246322B (en) Information processing method and system
CN108984294B (en) Resource scheduling method, device and storage medium
CN111625329A (en) Task allocation method and device, electronic equipment, server and storage medium
CN112883314A (en) Request processing method and device
CN112035246A (en) Method, device and system for acquiring virtual resources, electronic equipment and storage medium
CN112068975B (en) Information processing method and device
CN112506628B (en) Agent program management method, device, computer equipment and storage medium
CN110995767B (en) Request processing method and device
CN113297549B (en) Authority control method, device, equipment and computer readable storage medium
CN110247828B (en) Identification code allocation method and device
CN115391018A (en) Task scheduling method, device and equipment

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