CN109271238A - Support the task scheduling apparatus and method of a variety of programming languages - Google Patents

Support the task scheduling apparatus and method of a variety of programming languages Download PDF

Info

Publication number
CN109271238A
CN109271238A CN201710565579.XA CN201710565579A CN109271238A CN 109271238 A CN109271238 A CN 109271238A CN 201710565579 A CN201710565579 A CN 201710565579A CN 109271238 A CN109271238 A CN 109271238A
Authority
CN
China
Prior art keywords
task
user
scheduling
database
interface
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
Application number
CN201710565579.XA
Other languages
Chinese (zh)
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 Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke 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 Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710565579.XA priority Critical patent/CN109271238A/en
Publication of CN109271238A publication Critical patent/CN109271238A/en
Pending legal-status Critical Current

Links

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/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information

Abstract

The invention discloses the task scheduling apparatus and method of supporting a variety of programming languages, are related to field of computer technology.One specific embodiment of the device includes: database, the task member for store tasks;Task scheduling modules for grabbing the task member of the overdue task in database, and are sent to task control module;Task control module starts the task corresponding with task member in user's space;Wherein, task member includes the task identification ID of one task of unique identification;The task granularity of task is process.The embodiment can be avoided the dependence for the language that the language that task is write writes system, reaches and the technical effect that a variety of programming languages write scheduler task can be used.

Description

Support the task scheduling apparatus and method of a variety of programming languages
Technical field
The present invention relates to field of computer technology more particularly to a kind of task scheduling apparatus for supporting a variety of programming languages and Method.
Background technique
Big data develops to today, has changed into a huge industry.The process of big data can be divided into following substantially Step: acquisition -> cleaning treatment -> base library -> products application, platform provided by big data, which is substantially all, at present concentrates on: adopting This stage of collection -> cleaning treatment -> base library.It is frequently necessary to carry out basic data processing with converting in practical application to adapt to Different product demands.The data volume of underlying table is generally all quite huge, and online request is difficult to calculate in several hundred a milliseconds Come, therefore be not suitable for the direct development on underlying table, needs that base data table is further processed extraction, point library Divide table, then reapplies in product.Mapreduce mechanism or Storm mechanism are generallyd use in the prior art to after decomposed and reconstituted Underlying table be scheduled.
At least there are the following problems in the prior art for inventor's discovery:
1) Java language can only be used to be write, certain restrictions is received for the programmer for being unfamiliar with Java, no It is enough flexible;
2) platform environment is huge, needs certain human cost to safeguard distributed file system and scheduling system hadoop Or the cluster of streaming task scheduling system storm;
3) without dispatching and monitoring, progress of scheduler task etc. can not be known;
4) operation, control of task cannot achieve visualization;
6) task execution schedule of timing is more difficult;
5) for warehouse management system, these existing platforms are more suitable for data and enter the various processing before warehouse, are not suitable for Extraction process from warehouse to product.
Summary of the invention
In view of this, the embodiment of the present invention provides a kind of task scheduling apparatus for supporting a variety of programming languages and method, energy Scheduler task enough is write using a variety of programming languages, and the implementation progress of scheduler task can monitor.
To achieve the above object, according to an aspect of an embodiment of the present invention, a kind of a variety of programming languages of support are provided Task scheduling apparatus, comprising:
Database, the task member for store tasks;
Task scheduling modules for grabbing the task member of the overdue task in database, and are sent to task control mould Block;
Task control module starts the task corresponding with task member in user's space;
Wherein, task member includes the task identification ID of one task of unique identification;The task granularity of task is process.
Optionally, user's space is Linux user's space, is isolated between the task in any two user's space.
Optionally, task member includes at least one of: the corresponding user of task, task are on the storage road of user's space Diameter, start command, starting time, end time, task status, implementation progress, task status report number.
Optionally, the task status and/or implementation progress of task scheduling modules task based access control judges whether task is to expire Task.
Optionally, task control module includes at least one of: first interface, second interface and third interface are used for The task status and/or implementation progress that reception task reports;Wherein,
First interface, by task when being activated calling;
Second interface is called in the process of implementation by task;
Third interface is called at the end of execution by task.
Optionally, task control module is further used for: according to the task status and/or implementation progress of task, updating number According to the task member of the task in library.
Optionally, task scheduling apparatus of the invention further comprises:
User management module is uploaded to user's sky for creating and/or editing the task, and by the execution code of task Between, the task member of task is uploaded to database.
Optionally, user management module is further used for:
Receive the job enquiry request of user;
Task based access control inquiry request inquires database, obtains the task status/or implementation progress of task;
The task status of task and/or implementation progress are fed back into user.
Optionally, task control module is realized using web page server WebServer;And/or database uses relationship type Database mysql is realized.
Optionally, the task control module is realized using web page server Nginx and scripting language lua.
Another aspect according to an embodiment of the present invention provides a kind of method for scheduling task for supporting a variety of programming languages, Include the following steps:
Task scheduling modules grab the task member of overdue task from database, and are sent to task control module;
Task control module starts the task corresponding with task member in user's space;
Wherein,
The task member of store tasks in database;Task member includes the task identification ID of one task of unique identification;Task Task granularity be process.
Optionally, user's space is Linux user's space;It is isolated between task in any two user's space.
Optionally, task member includes at least one of: the corresponding user of task, task are on the storage road of user's space Diameter, start command, starting time, end time, task status, implementation progress, task status report number.
Optionally, the task status and/or implementation progress of task scheduling modules task based access control judges whether task is to expire Task.
Optionally, task control module includes at least one of: first interface, second interface and third interface are used for The task status and/or implementation progress that reception task reports;Wherein,
First interface, by task when being activated calling;
Second interface is called in the process of implementation by task;
Third interface is called at the end of execution by task.
Optionally, task control module is further used for: according to the task status and/or implementation progress of task, updating number According to the task member of the task in library.
Optionally, method for scheduling task further comprises:
User management module, for creating and/or editing task, and by the execution code of task be uploaded to user's space, The task member of task is uploaded to database.
Optionally, user management module is further used for:
Receive the job enquiry request of user;
Task based access control inquiry request inquires database, obtains the task status/or implementation progress of task;
The task status of task and/or implementation progress are fed back into user.
Optionally, task control module is realized using web page server WebServer;And/or database uses relationship type Database mysql is realized.
Optionally, task control module is realized using web page server Nginx and scripting language lua.
Other side according to an embodiment of the present invention provides a kind of task schedule terminal for supporting a variety of programming languages, Include:
One or more processors;
Storage device, for storing one or more programs,
When one or more of programs are executed by one or more of processors, so that one or more of processing Device realizes that the present invention supports the method for scheduling task of a variety of programming languages.
Still another aspect according to an embodiment of the present invention provides a kind of computer-readable medium, is stored thereon with computer Program realizes that the present invention supports the method for scheduling task of a variety of programming languages when described program is executed by processor.
One embodiment in foregoing invention have the following advantages that or the utility model has the advantages that because the present invention in task task grain Degree is process, so overcoming since task granularity is that task is compiled caused by thread rank or rank more smaller than thread The language write must rely on the technical issues of language that system is write, and then reach writing for task schedule and compile independent of system The technical effect of the language of journey.
Further effect possessed by above-mentioned non-usual optional way adds hereinafter in conjunction with specific embodiment With explanation.
Detailed description of the invention
Attached drawing for a better understanding of the present invention, does not constitute an undue limitation on the present invention.Wherein:
Fig. 1 is the signal of the main modular of the task scheduling apparatus according to an embodiment of the present invention for supporting a variety of programming languages Figure;
Fig. 2 is the work of the main modular of the task scheduling apparatus according to an embodiment of the present invention for supporting a variety of programming languages The schematic diagram of process;
Fig. 3 is the signal of the main flow of the method for scheduling task according to an embodiment of the present invention for supporting a variety of programming languages Figure;
Fig. 4 is that the embodiment of the present invention can be applied to exemplary system architecture figure therein;
Fig. 5 is adapted for the structural representation of the computer system for the terminal device or server of realizing the embodiment of the present invention Figure.
Specific embodiment
Below in conjunction with attached drawing, an exemplary embodiment of the present invention will be described, including the various of the embodiment of the present invention Details should think them only exemplary to help understanding.Therefore, those of ordinary skill in the art should recognize It arrives, it can be with various changes and modifications are made to the embodiments described herein, without departing from scope and spirit of the present invention.Together Sample, for clarity and conciseness, descriptions of well-known functions and structures are omitted from the following description.
Fig. 1 is the main modular of the task scheduling apparatus 100 according to an embodiment of the present invention for supporting a variety of programming languages Schematic diagram, as shown in Figure 1, comprising:
Database 101, the task member for store tasks;
Task scheduling modules 102 for grabbing the task member of the overdue task in database 101, and are sent to task Control module 103;
Task control module 103 starts the task corresponding with task member in user's space.
In the present invention, task fall on disk space be one section of executable program, in database 101 be a record, It is the process of an operating system when scheduled execution.The task granularity of task is process-level in the present invention, due to process It writes independent of programming language, therefore task scheduling apparatus of the invention can use multilingual independent of programming language Write task, such as C language, Java, Php (Hypertext Preprocessor, supertext pre-process language), boa language Python etc. is sayed, so that task is write very flexibly.In actual use, oneself can be used most in those skilled in the art Known language writes task.
(SuSE) Linux OS is a kind of cloning system developed based on You Nisi UNIX operating system, is had multi-purpose Family, multitask ability, performance stablize.Therefore, in some alternative embodiments, user's space is Linux user's space.For The efficiency of task schedule is further increased, is isolated between the task in any two user's spaces.
Task member includes the task identification ID of one task of unique identification, according to task member can uniquely find one it is right The task in user's space answered.One user's space can have multiple tasks, and a task only corresponds to a user's space.It can Selection of land, task member further includes at least one of: the corresponding user of task, task are ordered in the store path of user's space, starting It enables, start the time, end time, task status, implementation progress, task status report number.
Task scheduling modules 102 can judge whether a task is the task of expiring according to scheduled judgment rule, optionally, The task status and/or implementation progress of 102 task based access control of task scheduling modules judge whether the task is overdue task.Appoint The setting rule of business state and/or implementation progress can be selected according to the actual situation, for example, when task is not carried out, setting For " stopping " state;When task is carrying out, it is set as " being currently running " state;When temporarily interrupting execution for some reason, It is set as " stopping " state;At the end of task execution, it is set as " terminating " state.For another example when task is not carried out, implementation progress It is set as " being not carried out ";When task is carrying out, implementation progress is set as " in execution ";It temporarily interrupts and executes for some reason When, implementation progress is set as " executing suspension ";At the end of task execution, implementation progress is set as " execution terminates ".
In some preferred embodiments, the task member of task records following information: task identification ID, and the title of task is held Row timetable, task status and implementation progress.ID is unique mark of expression task, and each ID uniquely corresponds to a task, example ID of the task symbol with uniqueness as task can such as be used.The title of task can be customized by task author. Implementation schedule indicates disposable task or timed task, can be using Linux timed task system cron's Pyatyi time model is indicated.Task status mark task is currently running state or halted state.Implementation progress mark The implementation progress situation of task, such as corresponding implementation progress is denoted as 50% when task execution half.
Task control module 103 can be realized using web page server WebServer.When WebServer receives one When HTTP (HyperText Transfer Protocol, hypertext transfer protocol) requests (request), one can be returned Http response (response), such as send a html page back to.In the present embodiment, task can be logical with task scheduling apparatus Cross HTTP interface readjustment loose coupling, in such a way that HTTP interface is adjusted back come the task status of the task of collecting and/or execute into Degree, is a kind of more open processing, the implementation progress that task may be implemented can monitor, convenient for knowing execution status of task at any time.
Optionally, since the service logic of HTTP interface in task control module 103 is relatively fewer, web page server Nginx's and scripting language lua is higher, and therefore, task scheduling modules can use web page server Nginx and scripting language Lua is realized.
Optionally, task control module 103 includes at least one of: first interface, second interface and third interface, is used In task status and/or implementation progress that reception task reports;Wherein, first interface, by task when being activated calling;Second Interface is called in the process of implementation by task;Third interface is called at the end of execution by task.In some embodiments, appoint Control module 103 of being engaged in includes three interfaces: first interface, second interface and third interface, wherein
First interface, by task when being activated calling, can be used for having reported current task to task control module 103 It is activated;
Second interface is called in the process of implementation by task, can be used for reporting current task to task control module 103 Task status and/or implementation progress;If current task is not finished, process () interface can be called to report task shape repeatedly State and/or implementation progress, until current task terminates;
Third interface is called at the end of execution by task, can be used for reporting current task to task control module 103 It is over.
Optionally, task control module 103 is further used for: according to the task status and/or implementation progress of task, updating The task member of task in database 101.For example, if being over task, by the task member of the task in database 101 In task status be written as " terminating " state.In this way, convenient for the task status of each task in timely monitoring data library 101.This Outside, due to the task status for each task that timely updated, task scheduling modules 102 are without judging task status for " end " shape Whether the task of state is the task of expiring, to save a large amount of time, improves task scheduling modules 102 from database 101 Grab the efficiency of overdue task.
Task scheduling apparatus 100 of the invention may further include: user management module 104, for creating and/or compiling The task of collecting.For example, user submits task by user management module 104 in the task of creation, user management module 104 will appoint The execution code of business is uploaded to user's space, the task member of task is uploaded to database.For another example in the task of editor, it can To modify task scheduling modules 102 between the time for grabbing overdue task in database 101 by user management module 104 Every, for example the one subtask crawl of inner progress of database 101 was gone every one minute.
Optionally, user management module 104 can be further used for: receive the job enquiry request of user;Task based access control Inquiry request inquires database 101, obtains the task status/or implementation progress of task;By the task status and/or execution of task Progress feeds back to user.The task record in database 101 is accessed by user management module 104, user is fed back to and appoints at present Visual task status monitoring may be implemented, convenient for observation in time and control in the task status of business and the implementation progress of task Task status.
Database 101 can using relevant database mysql realize, by the task record of operating database 101 come Carry out data interaction.
Fig. 2 is the work of the main modular of the task scheduling apparatus according to an embodiment of the present invention for supporting a variety of programming languages The schematic diagram of process.
As shown in Fig. 2, the process of task creation are as follows:
Step 1: user submits task by user management module 104;
Step 2: user management module 104 copies the task code of task to disk space, can wrap in disk space Include multiple user's spaces, for example, party A-subscriber space, party B-subscriber space ..., M user's space, each user is that independent Linux is used Family is isolated between different user's spaces, is unable to mutual operation task and data;
Step 3: the task member of task is recorded in database 101 user management module 104.
As shown in Fig. 2, the process of task schedule are as follows:
Step 1: task scheduling modules 102 periodically inquire database 101, overdue task is judged whether there is;
Second: if task expires, obtaining the task member of the overdue task;
Step 3: the task member of overdue task is sent to task control module 103;
Step 4: task control module 103 executes the task in corresponding user's space.
As shown in Fig. 2, the process of task control are as follows:
Step 1: task call first interface reports that current task has opened to task control module 103 after task start It is dynamic;
Step 2: task call second interface reports current task to task control module 103 during task execution Received implementation progress is written in database 101 in corresponding task member for implementation progress, task control module 103;Repeating should Step, until task execution terminates;
Step 3: task call third interface terminates to report to 103 transmission task of task control module at the end of task.
As shown in Fig. 2, the process that task status is checked are as follows:
Step 1: user sends job enquiry request to user management module 104;
Step 2: user management module 104 inquires database 101, the task status and/or implementation progress of the task are obtained After feed back to user.
Fig. 3 is the signal of the main flow of the method for scheduling task according to an embodiment of the present invention for supporting a variety of programming languages Figure.As shown in figure 3, the method for scheduling task of a variety of programming languages is supported to include the following steps:
S301, task scheduling modules grab the task member of overdue task from database, and are sent to task control mould Block;
Task corresponding with task member in S302, task control module starting user's space;
Wherein,
The task member of store tasks in database;Task member includes the task identification ID of one task of unique identification;Task Task granularity be process.
Optionally, user's space is Linux user's space;It is isolated between task in any two user's space.
Optionally, task member includes at least one of: the corresponding user of task, task are on the storage road of user's space Diameter, start command, starting time, end time, task status, implementation progress, task status report number.
Optionally, the task status and/or implementation progress of task scheduling modules task based access control judges whether task is to expire Task.
Optionally, task control module includes at least one of: first interface, second interface and third interface are used for The task status and/or implementation progress that reception task reports;Wherein,
First interface, by task when being activated calling;
Second interface is called in the process of implementation by task;
Third interface is called at the end of execution by task.
Optionally, task control module is further used for: according to the task status and/or implementation progress of task, updating number According to the task member of the task in library.
Optionally, method for scheduling task further comprises:
User management module, for creating and/or editing task, and by the execution code of task be uploaded to user's space, The task member of task is uploaded to database.
Optionally, user management module is further used for:
Receive the job enquiry request of user;
Task based access control inquiry request inquires database, obtains the task status/or implementation progress of task;
The task status of task and/or implementation progress are fed back into user.
Optionally, task control module is realized using web page server WebServer;And/or database uses relationship type Database mysql is realized.
Optionally, task control module is realized using web page server Nginx and scripting language lua.
Fig. 4 is shown can be using the method for scheduling task of the embodiment of the present invention or the exemplary system of task scheduling apparatus Framework 400.
As shown in figure 4, system architecture 400 may include terminal device 401,402,403, network 404 and server 405. Network 404 between terminal device 401,402,403 and server 405 to provide the medium of communication link.Network 404 can be with Including various connection types, such as wired, wireless communication link or fiber optic cables etc..
User can be used terminal device 401,402,403 and be interacted by network 404 with server 405, to receive or send out Send message etc..Various telecommunication customer end applications, such as the application of shopping class, net can be installed on terminal device 401,402,403 The application of page browsing device, searching class application, instant messaging tools, mailbox client, social platform software etc..
Terminal device 401,402,403 can be the various electronic equipments with display screen and supported web page browsing, packet Include but be not limited to smart phone, tablet computer, pocket computer on knee and desktop computer etc..
Server 405 can be to provide the server of various services, such as utilize terminal device 401,402,403 to user The various telecommunication customer ends application browsed provides the back-stage management server supported.Back-stage management server can be to receiving The data such as information query request analyze etc. processing, and by processing result (such as the task shape of being inquired for task State and/or implementation progress etc.) feed back to terminal device.
It should be noted that method for scheduling task provided by the embodiment of the present invention is generally executed by server 405, accordingly Ground, task scheduling apparatus are generally positioned in server 405.
It should be understood that the number of terminal device, network and server in Fig. 4 is only schematical.According to realization need It wants, can have any number of terminal device, network and server.
Other side according to an embodiment of the present invention provides a kind of task schedule terminal for supporting a variety of programming languages, Include:
One or more processors;
Storage device, for storing one or more programs,
When one or more programs are executed by one or more processors, so that the one or more processors realize this hair The bright method for scheduling task for supporting a variety of programming languages.
Below with reference to Fig. 5, it illustrates the computer systems 500 for the terminal device for being suitable for being used to realize the embodiment of the present invention Structural schematic diagram.Terminal device shown in Fig. 5 is only an example, function to the embodiment of the present invention and should not use model Shroud carrys out any restrictions.
As shown in figure 5, computer system 500 includes central processing unit (CPU) 501, it can be read-only according to being stored in Program in memory (ROM) 502 or be loaded into the program in random access storage device (RAM) 503 from storage section 508 and Execute various movements appropriate and processing.In RAM 503, also it is stored with system 500 and operates required various programs and data. CPU 501, ROM 502 and RAM 503 are connected with each other by bus 504.Input/output (I/O) interface 505 is also connected to always Line 504.
I/O interface 505 is connected to lower component: the importation 506 including keyboard, mouse etc.;It is penetrated including such as cathode The output par, c 507 of spool (CRT), liquid crystal display (LCD) etc. and loudspeaker etc.;Storage section 508 including hard disk etc.; And the communications portion 509 of the network interface card including LAN card, modem etc..Communications portion 509 via such as because The network of spy's net executes communication process.Driver 510 is also connected to I/O interface 505 as needed.Detachable media 511, such as Disk, CD, magneto-optic disk, semiconductor memory etc. are mounted on as needed on driver 510, in order to read from thereon Computer program be mounted into storage section 508 as needed.
Particularly, disclosed embodiment, the process described above with reference to flow chart may be implemented as counting according to the present invention Calculation machine software program.For example, embodiment disclosed by the invention includes a kind of computer program product comprising be carried on computer Computer program on readable medium, the computer program include the program code for method shown in execution flow chart.? In such embodiment, which can be downloaded and installed from network by communications portion 509, and/or from can Medium 511 is dismantled to be mounted.When the computer program is executed by central processing unit (CPU) 501, system of the invention is executed The above-mentioned function of middle restriction.
It should be noted that computer-readable medium shown in the present invention can be computer-readable signal media or meter Calculation machine readable storage medium storing program for executing either the two any combination.Computer readable storage medium for example can be --- but not Be limited to --- electricity, magnetic, optical, electromagnetic, infrared ray or semiconductor system, device or device, or any above combination.Meter The more specific example of calculation machine readable storage medium storing program for executing can include but is not limited to: have the electrical connection, just of one or more conducting wires Taking formula computer disk, hard disk, random access storage device (RAM), read-only memory (ROM), erasable type may be programmed read-only storage Device (EPROM or flash memory), optical fiber, portable compact disc read-only memory (CD-ROM), light storage device, magnetic memory device, Or above-mentioned any appropriate combination.In the present invention, computer readable storage medium can be it is any include or storage journey The tangible medium of sequence, the program can be commanded execution system, device or device use or in connection.And at this In invention, computer-readable signal media may include in a base band or as carrier wave a part propagate data-signal, Wherein carry computer-readable program code.The data-signal of this propagation can take various forms, including but unlimited In electromagnetic signal, optical signal or above-mentioned any appropriate combination.Computer-readable signal media can also be that computer can Any computer-readable medium other than storage medium is read, which can send, propagates or transmit and be used for By the use of instruction execution system, device or device or program in connection.Include on computer-readable medium Program code can transmit with any suitable medium, including but not limited to: wireless, electric wire, optical cable, RF etc. are above-mentioned Any appropriate combination.
Flow chart and block diagram in attached drawing are illustrated according to the system of various embodiments of the invention, method and computer journey The architecture, function and operation in the cards of sequence product.In this regard, each box in flowchart or block diagram can generation A part of one module, program segment or code of table, a part of above-mentioned module, program segment or code include one or more Executable instruction for implementing the specified logical function.It should also be noted that in some implementations as replacements, institute in box The function of mark can also occur in a different order than that indicated in the drawings.For example, two boxes succeedingly indicated are practical On can be basically executed in parallel, they can also be executed in the opposite order sometimes, and this depends on the function involved.Also it wants It is noted that the combination of each box in block diagram or flow chart and the box in block diagram or flow chart, can use and execute rule The dedicated hardware based systems of fixed functions or operations is realized, or can use the group of specialized hardware and computer instruction It closes to realize.
Being described in module involved in the embodiment of the present invention can be realized by way of software, can also be by hard The mode of part is realized.Described module also can be set in the processor, for example, can be described as: a kind of processor packet It includes sending module, obtain module, determining module and first processing module.Wherein, the title of these modules is under certain conditions simultaneously The restriction to the module itself is not constituted, for example, sending module is also described as " sending picture to the server-side connected The module of acquisition request ".
As on the other hand, the present invention also provides a kind of computer-readable medium, which be can be Included in equipment described in above-described embodiment;It is also possible to individualism, and without in the supplying equipment.Above-mentioned calculating Machine readable medium carries one or more program, realizes when said one or multiple programs are executed by the equipment The present invention supports the method for scheduling task of a variety of programming languages.
Compared with prior art, technical solution according to an embodiment of the present invention can support multilingual task to write, and improve The flexibility that task is write, reduction task write threshold;It can be realized the real-time of the implementation progress of task to monitor, be convenient for task Control and state are checked.
Above-mentioned specific embodiment, does not constitute a limitation on the scope of protection of the present invention.Those skilled in the art should be bright It is white, design requirement and other factors are depended on, various modifications, combination, sub-portfolio and substitution can occur.It is any Made modifications, equivalent substitutions and improvements etc. within the spirit and principles in the present invention, should be included in the scope of the present invention Within.

Claims (22)

1. a kind of task scheduling apparatus for supporting a variety of programming languages characterized by comprising
Database, the task member for store tasks;
Task scheduling modules for grabbing the task member of the overdue task in the database, and are sent to task control mould Block;
Task control module starts the task corresponding with the task member in user's space;
Wherein, the task member includes the task identification ID of one task of unique identification;The task granularity of the task is process.
2. task scheduling apparatus as described in claim 1, which is characterized in that the user's space is Linux user's space, is appointed It is isolated between task in two user's spaces of meaning.
3. task scheduling apparatus as described in claim 1, which is characterized in that the task member includes at least one of: institute State the corresponding user of task, the task the store path of the user's space, start command, starting the time, the end time, Task status, implementation progress, task status report number.
4. task scheduling apparatus as claimed in claim 3, which is characterized in that the task scheduling modules are based on the task Task status and/or implementation progress judge whether the task is overdue task.
5. task scheduling apparatus as claimed in claim 3, which is characterized in that the task control module include it is following at least it One: first interface, second interface and third interface, for receiving the task status and/or implementation progress that the task reports;Its In,
First interface, by the task when being activated calling;
Second interface is called in the process of implementation by the task;
Third interface is called at the end of execution by the task.
6. task scheduling apparatus as claimed in claim 5, which is characterized in that the task control module is further used for: according to According to the task status and/or implementation progress of the task, the task member of the task in the database is updated.
7. task scheduling apparatus as described in claim 1, which is characterized in that further comprise:
User management module is uploaded to the use for creating and/or editing the task, and by the execution code of the task The task member of the task is uploaded to the database by family space.
8. task scheduling apparatus as claimed in claim 7, which is characterized in that the user management module is further used for:
Receive the job enquiry request of user;
The database is inquired based on job enquiry request, obtains the task status/or implementation progress of the task;
The task status of the task and/or implementation progress are fed back into user.
9. task scheduling apparatus as described in claim 1, which is characterized in that the task control module uses web page server WebServer is realized;And/or the database is realized using relevant database mysql.
10. task scheduling apparatus as claimed in claim 9, which is characterized in that the task control module uses web service Device Nginx and scripting language lua is realized.
11. a kind of method for scheduling task for supporting a variety of programming languages, it is characterised in that include the following steps:
Task scheduling modules grab the task member of overdue task from database, and are sent to task control module;
Task control module starts the task corresponding with the task member in user's space;
Wherein,
The task member of store tasks in the database;The task member includes the task identification ID of one task of unique identification; The task granularity of the task is process.
12. method for scheduling task as claimed in claim 11, which is characterized in that the user's space is Linux user's space; It is isolated between task in user's space described in any two.
13. method for scheduling task as claimed in claim 11, which is characterized in that the task member includes at least one of: The corresponding user of the task, the task the store path of the user's space, start command, the starting time, at the end of Between, task status, implementation progress, task status report number.
14. method for scheduling task as claimed in claim 13, which is characterized in that the task scheduling modules are based on the task Task status and/or implementation progress, judge whether the task is overdue task.
15. method for scheduling task as claimed in claim 13, which is characterized in that the task control module include it is following at least One of: first interface, second interface and third interface, for receiving the task status and/or implementation progress that the task reports; Wherein,
First interface, by the task when being activated calling;
Second interface is called in the process of implementation by the task;
Third interface is called at the end of execution by the task.
16. method for scheduling task as claimed in claim 15, which is characterized in that the task control module is further used for: According to the task status and/or implementation progress of the task, the task member of the task in the database is updated.
17. method for scheduling task as claimed in claim 11, which is characterized in that further comprise:
User management module is uploaded to the use for creating and/or editing the task, and by the execution code of the task The task member of the task is uploaded to the database by family space.
18. method for scheduling task as claimed in claim 17, which is characterized in that the user management module is further used for:
Receive the job enquiry request of user;
The database is inquired based on job enquiry request, obtains the task status/or implementation progress of the task;
The task status of the task and/or implementation progress are fed back into user.
19. method for scheduling task as claimed in claim 11, which is characterized in that the task control module uses web service Device WebServer is realized;And/or the database is realized using relevant database mysql.
20. method for scheduling task as claimed in claim 19, which is characterized in that the task control module uses web service Device Nginx and scripting language lua is realized.
21. a kind of task schedule terminal for supporting a variety of programming languages characterized by comprising
One or more processors;
Storage device, for storing one or more programs,
When one or more of programs are executed by one or more of processors, so that one or more of processors are real The now method as described in any in claim 11-20.
22. a kind of computer-readable medium, is stored thereon with computer program, which is characterized in that described program is held by processor The method as described in any in claim 11-20 is realized when row.
CN201710565579.XA 2017-07-12 2017-07-12 Support the task scheduling apparatus and method of a variety of programming languages Pending CN109271238A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710565579.XA CN109271238A (en) 2017-07-12 2017-07-12 Support the task scheduling apparatus and method of a variety of programming languages

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710565579.XA CN109271238A (en) 2017-07-12 2017-07-12 Support the task scheduling apparatus and method of a variety of programming languages

Publications (1)

Publication Number Publication Date
CN109271238A true CN109271238A (en) 2019-01-25

Family

ID=65152300

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710565579.XA Pending CN109271238A (en) 2017-07-12 2017-07-12 Support the task scheduling apparatus and method of a variety of programming languages

Country Status (1)

Country Link
CN (1) CN109271238A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110717992A (en) * 2019-09-30 2020-01-21 奇安信科技集团股份有限公司 Method, device, computer system and readable storage medium for scheduling model
CN111090423A (en) * 2019-11-26 2020-05-01 苏州思必驰信息科技有限公司 Webhook framework system and method for realizing active calling and event triggering
CN111782412A (en) * 2019-04-03 2020-10-16 阿里巴巴集团控股有限公司 Data acquisition method, server and related system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020095525A1 (en) * 1998-09-18 2002-07-18 Wylci Fables Computer processing and programming method using autonomous data handlers
CN102262562A (en) * 2011-07-18 2011-11-30 李建成 Task processing method and system
CN102420709A (en) * 2011-12-23 2012-04-18 大唐移动通信设备有限公司 Method and equipment for managing scheduling task based on task frame
CN102880503A (en) * 2012-08-24 2013-01-16 新浪网技术(中国)有限公司 Data analysis system and data analysis method
CN103677973A (en) * 2013-09-01 2014-03-26 西安重装渭南光电科技有限公司 Distributed multi-task scheduling management system
CN106201694A (en) * 2016-07-13 2016-12-07 北京农信互联科技有限公司 Configuration method and system for executing timing task under distributed system
CN106528275A (en) * 2015-09-10 2017-03-22 网易(杭州)网络有限公司 Processing method of data tasks and task scheduler

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020095525A1 (en) * 1998-09-18 2002-07-18 Wylci Fables Computer processing and programming method using autonomous data handlers
CN102262562A (en) * 2011-07-18 2011-11-30 李建成 Task processing method and system
CN102420709A (en) * 2011-12-23 2012-04-18 大唐移动通信设备有限公司 Method and equipment for managing scheduling task based on task frame
CN102880503A (en) * 2012-08-24 2013-01-16 新浪网技术(中国)有限公司 Data analysis system and data analysis method
CN103677973A (en) * 2013-09-01 2014-03-26 西安重装渭南光电科技有限公司 Distributed multi-task scheduling management system
CN106528275A (en) * 2015-09-10 2017-03-22 网易(杭州)网络有限公司 Processing method of data tasks and task scheduler
CN106201694A (en) * 2016-07-13 2016-12-07 北京农信互联科技有限公司 Configuration method and system for executing timing task under distributed system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111782412A (en) * 2019-04-03 2020-10-16 阿里巴巴集团控股有限公司 Data acquisition method, server and related system
CN110717992A (en) * 2019-09-30 2020-01-21 奇安信科技集团股份有限公司 Method, device, computer system and readable storage medium for scheduling model
CN110717992B (en) * 2019-09-30 2023-10-20 奇安信科技集团股份有限公司 Method, apparatus, computer system and readable storage medium for scheduling model
CN111090423A (en) * 2019-11-26 2020-05-01 苏州思必驰信息科技有限公司 Webhook framework system and method for realizing active calling and event triggering
CN111090423B (en) * 2019-11-26 2022-07-08 思必驰科技股份有限公司 Webhook framework system and method for realizing active calling and event triggering

Similar Documents

Publication Publication Date Title
CN107729139B (en) Method and device for concurrently acquiring resources
CN109308214A (en) Data task processing method and system
CN108647083A (en) Task executing method, device, system, electronic equipment and computer-readable medium
CN109033001A (en) Method and apparatus for distributing GPU
CN108182111A (en) Task scheduling system, method and apparatus
CN101652750B (en) Data processing device, distributed processing system and data processing method
US20180131764A1 (en) Dynamically scaling application components using microservices
CN110245011A (en) A kind of method for scheduling task and device
CN107844324A (en) Customer terminal webpage redirects treating method and apparatus
CN108510081A (en) machine learning method and platform
CN109241033A (en) The method and apparatus for creating real-time data warehouse
CN110019123A (en) A kind of data migration method and device
CN108021450A (en) Job analysis method and apparatus based on YARN
CN109783197A (en) Dispatching method and device for program runtime environment
CN109271238A (en) Support the task scheduling apparatus and method of a variety of programming languages
CN111507674B (en) Task information processing method, device and system
CN110196790A (en) The method and apparatus of abnormal monitoring
CN110377416A (en) Distributed subregion method for scheduling task and device
CN110473036A (en) A kind of method and apparatus generating order number
CN109936605A (en) A kind of method and apparatus of loading interface data
KR20210129584A (en) Dynamically allocated cloud worker management system and method therefor
CN109960212A (en) Task sending method and device
CN109558323A (en) For debugging system, the method and apparatus of the page
CN110019044A (en) Big data cluster quasi real time Yarn Mission Monitor analysis method
CN109840815B (en) System and method for order processing

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

Application publication date: 20190125

RJ01 Rejection of invention patent application after publication