CN107665144A - The balance dispatching center of distributed task scheduling, mthods, systems and devices - Google Patents

The balance dispatching center of distributed task scheduling, mthods, systems and devices Download PDF

Info

Publication number
CN107665144A
CN107665144A CN201610615952.3A CN201610615952A CN107665144A CN 107665144 A CN107665144 A CN 107665144A CN 201610615952 A CN201610615952 A CN 201610615952A CN 107665144 A CN107665144 A CN 107665144A
Authority
CN
China
Prior art keywords
task
scheduling
amount
main frame
operation plan
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.)
Granted
Application number
CN201610615952.3A
Other languages
Chinese (zh)
Other versions
CN107665144B (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 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 CN201610615952.3A priority Critical patent/CN107665144B/en
Publication of CN107665144A publication Critical patent/CN107665144A/en
Application granted granted Critical
Publication of CN107665144B publication Critical patent/CN107665144B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention discloses a kind of balance dispatching center of distributed task scheduling, mthods, systems and devices, methods described includes:Multiple tasks group is created according to function or type, for scheduling strategy corresponding to the configuration of each task groups;Multiple operation plans, the corresponding executable set of tasks of each operation plan are customized for each task groups;The current task execution amount of each task groups is monitored, according to configuration parameter, the task scheduling amount of each operation plan is calculated;According to the current task execution amount of each task groups, according to configuration parameter, the mission dispatching amount of each task main frame is calculated;According to the amount of issuing of each task main frame, executable task is issued for corresponding task main frame.The control centre includes configuration module, task scheduling modules, mission dispatching module, task buffer and monitoring module.The present invention is effectively improved tasks carrying efficiency and the utilization rate of task main frame, the balanced load of task main frame.

Description

The balance dispatching center of distributed task scheduling, mthods, systems and devices
Technical field
The present invention relates to technical field of data transmission, specifically, be related to a kind of distributed task scheduling balance dispatching center, Mthods, systems and devices.
Background technology
With computer, the development of the network information technology, in some enterprise-oriented systems, substantial amounts of task distribution is in difference Task main frame complete.How these tasks are dispatched, and reasonably distributing to corresponding task main frame then becomes important technology Problem.
At present, task scheduling performs and is broadly divided into the following two kinds:
Serial single node task scheduling, i.e. unit complete the scheduling and execution of task.Feature is in fact:Realize simply, be easy to Safeguard.Shortcoming is:But when there is considerable task to need to dispatch and perform, unit pressure is big, so that can not ensure that task has been honoured an agreement Into.
Task is dispatched and performed to distributed task dispatching, i.e. multi-host parallel.Feature is:Multimachine hardware resource is made full use of, Considerable task can be loaded, facilitates extending transversely when task exceedes load, effectively solves serial single node task scheduling not Foot.
At present, based on enterprise-level task scheduling is dispatched in a distributed manner substantially, and various scheduling strategies, tasks synchronization etc. are provided Mechanism.Such as:
Using Quartz lightweight Scheduling Frameworks, mainly for the task scheduling of time cycle and time point.Or use ScheduledExecutor, it is the periodic scheduling thread pool that Java is provided in itself, it is possible to achieve fixed time period is appointed Business performs.Or synchronous task is performed to distributed task scheduling by ZooKeeper frameworks, prevent from repeating or executing out.
For example, prior art adopts the following technical scheme that the scheduling for realizing distributed task scheduling:
The one or more executable tasks of definition;
The triggering cycle of each executable task of configuration performs time point;
Start Quartz, ScheduledExecutor or other Scheduling Frameworks, read scheduling configuration, wait task to be triggered Perform;
Scheduling Framework triggers tasks carrying, immediately into next task dispatching cycle.
Executable task synchronizes control by ZooKeeper, prevents multimachine from repeating.
But technical scheme of the prior art only uses Scheduling Framework, the implementation status of task can not be supervised Control, thus the support performed to distributed multimachine is undesirable, and overstocking for some host tasks is easily caused, load is uneven Weighing apparatus.
The content of the invention
The technical problem to be solved in the present invention is, according to the deficiencies in the prior art, there is provided a kind of distributed task scheduling it is equal Weigh control centre, mthods, systems and devices, flexible configuration, adjustment scheduling strategy and mission dispatching parameter, so as to balanced each task The task amount of main frame.
In order to solve the above-mentioned technical problem, the invention provides a kind of equalization scheduling method of distributed task scheduling, including:
Multiple tasks group is created according to function or type, for scheduling strategy corresponding to the configuration of each task groups;
Multiple operation plans, the corresponding executable set of tasks of each operation plan are customized for each task groups;
The current task execution amount of each task groups is monitored, according to configuration parameter, appointing for each operation plan is calculated Business scheduling quantum, and the task queue that will be loaded into the task of the task scheduling amount respective amount in task buffer;
According to the current task execution amount and configuration parameter of each task groups, it is calculated under the task of each task main frame Hair amount;
According to the amount of issuing of each task main frame, corresponding task queue, which is taken out, from the task buffer can perform Corresponding task main frame is given in mission dispatching.
Wherein, the scheduling strategy comprises at least the packet configuration of task main frame;The operation plan comprises at least scheduling Cycle and dispatch weight.
Preferably, the step of current task execution amount of each task groups of monitoring includes:
The tasks carrying feedback information of reception task main frame, obtain the general assignment execution amount of a period;
Calculate the average tasks carrying amount in the period;
According to default fine setting coefficient, average tasks carrying amount is multiplied by the fine setting coefficient and obtains working as each task groups Preceding tasks carrying amount
Wherein, the value of the fine setting coefficient is 0.8-1.2.
Preferably, it is described each operation plan is calculated task scheduling amount the step of include:
According to task queue length current in caching, the current task queue length and maximum task queue are calculated The difference Q of lengthe
In the case where ensureing no more than maximum scheduling quantum and maximum queue length,And QeMaximum is taken as this Business scheduling total amount Qt
The weight summation W of multiple operation plans of each task groups is calculated according to sum formulasum
Weight W according to each operation planiWith weight summation WsumRatio and this task scheduling total amount Qt, according to public affairs Formula 1-1 calculates the scheduling quantum Q of each operation plani,
Qi=Qt×(Wi÷Wsum) 1-1。
Preferably, if the weight of multiple operation plans in the task groups is different, it is described be calculated it is each The step of mission dispatching amount of task main frame, includes:
According to the weight summation W of multiple operation plans in sum formula calculating task groupsum
According to current task execution amount, weight and weight summation, calculated according to formula 2-1 for each operation plan The amount of issuing Cai,
According to current task queue length, calculating each task main frame averagely needs the amount of issuing
And CaiIn take minimum value as the task main frame amount of issuing C;
It is described that each task master is calculated if there is identical weight in multiple scheduling in the task groups in the works The step of mission dispatching amount C of machine, includes:
Weight summation in calculating task group after multiple operation plan weight duplicate removalsWherein, the m is Weight number after duplicate removal, Wi' it is i-th of weight;
According to current task execution amount, duplicate removal weight and weight summation, issuing for each weight is calculated according to formula 2-2 Measure C'w,
Calculate the cycle summation of the operation plan under equal weightWherein, the IiFor i-th of scheduling meter The dispatching cycle drawn;
The cycle inverse ratio R of the operation plan under equal weight is calculated according to formula 2-3i,
Ri=I'sum÷Ii2-3;
The cycle inverse ratio sum of the operation plan under equal weight is calculated according to formula 2-4, obtains inverse ratio summation Rsum,
According to formula 2-5, the cycle inverse ratio R according to the operation plan under equal weightiAnd inverse ratio summation RsumWith the power The amount of the issuing C of weightwObtain mission dispatching amount C'a of the operation plan in the cyclei,
C'ai=C'w×(Ri÷Rsum) 2-5;
According to current task queue length, calculating each task main frame averagely needs to issue quantity
And C'aiIn take minimum value as the task main frame amount of issuing C.
Preferably, the equalization scheduling method of described distributed task scheduling also includes setting synchrolock for the pending task The step of with the synchrolock is removed after the completion of the task.
Preferably, task main frame is before execution task, by performing the lives of the setnx (key, value) in Redis databases Make and the synchrolock is set for the task.
Present invention also offers a kind of balance dispatching center of distributed task scheduling, wherein, including:
Configuration module, for creating multiple tasks group according to function or type, to be dispatched corresponding to the configuration of each task groups Strategy;Multiple operation plans are customized for each task groups, the task groups are divided into according to the operation plan and accordingly may be used Perform set of tasks;
Task scheduling modules, according to tasks carrying feedback information and the configuration parameter of operation plan, each tune is calculated Spend the scheduling quantum of plan, and the task queue that will be loaded into the task of the task scheduling amount respective amount in task buffer;
Mission dispatching module, according to the configuration parameter of operation plan in tasks carrying feedback information and task groups, calculate To the amount of issuing of each task main frame, according to the amount of issuing, from the task buffer corresponding task queue take out and can hold Corresponding task main frame is given in row mission dispatching;With
Monitoring module, for receiving task main frame feedback information, the tasks carrying amount of setting time section is obtained, and calculate institute State the tasks carrying amount of each task groups in the period.
Preferably, the task scheduling modules include:
First data-reading unit, for reading the arrange parameter of scheduling strategy and operation plan and from the monitoring module Obtained tasks carrying amount;
First computing unit, for according to preset schedule algorithm, obtaining phase from first data-reading unit successively The supplemental characteristic answered, the scheduling quantum of each operation plan is calculated according to corresponding algorithm flow;With
Task is loaded into unit, and according to the scheduling quantum of each operation plan, the task is loaded into the task queue in caching.
Preferably, the task scheduling modules also include:
Synchrolock identifies setting unit, for setting synchrolock to identify for scheduled good executable task.
Preferably, the mission dispatching module includes:
Second data-reading unit, for reading tasks carrying amount and scheduling strategy and the scheduling that the monitoring module obtains The arrange parameter of plan;
Second computing unit, for issuing algorithm according to default, obtained successively from second data-reading unit Corresponding supplemental characteristic, each task main frame amount of issuing is calculated according to corresponding algorithm flow;With
Mission dispatching unit, according to each task main frame amount of issuing, from the task buffer corresponding task queue take Go out executable mission dispatching to corresponding task main frame.
Present invention also offers a kind of balance dispatching device of distributed task scheduling, wherein, including memory and processor, institute State memory and be used for data storage and instruction, the processor configures as follows according to the instruction:
Multiple tasks group is created according to function or type, for scheduling strategy corresponding to the configuration of each task groups;
Multiple operation plans, the corresponding executable set of tasks of each operation plan are customized for each task groups;
The current task execution amount of each task groups is monitored, according to configuration parameter, appointing for each operation plan is calculated Business scheduling quantum, and the task queue that will be loaded into the task of the task scheduling amount respective amount in task buffer;
According to the current task execution amount and configuration parameter of each task groups, it is calculated under the task of each task main frame Hair amount;
According to the amount of issuing of each task main frame, corresponding task queue, which is taken out, from the task buffer can perform Corresponding task main frame is given in mission dispatching.
Present invention also offers a kind of balance dispatching system of distributed task scheduling, wherein, including:
Control centre as the aforementioned, and
Task mainframe cluster, being issued for receiving the control centre for task perform the task, and to the scheduling Center sends tasks carrying feedback information.
Preferably, the task main frame includes:
Task acquiring unit, for obtaining the task of respective numbers from control centre;
Task executing units, for performing obtaining for task;
Feedback unit, for sending tasks carrying feedback information to control centre;With
Synchrolock setting unit, for before execution task, the synchrolock mark in task, being set to the task Synchrolock is put, after the task is completed, removes the synchrolock.
Preferably, the balance dispatching system of the distributed task scheduling also includes Redis databases, the task main frame it is same Setnx (key, the value) orders that step lock setting unit is performed in Redis databases set the synchrolock for the task, After the tasks carrying is complete, the synchrolock is removed.
The present invention is effectively improved tasks carrying efficiency and task main frame by task scheduling and the algorithm of mission dispatching Utilization rate, the balanced load of task main frame.Also, by Redis database realizing synchrolocks, network jitter is avoided to produce Lock conflict, lift the stability of tasks carrying.The present invention is managed by group task, flexibly customized operation plan, moreover, this Tasks carrying feedback mechanism is supported in invention, can monitor task fall, the health condition of mission dispatching and tasks carrying, and according to feedback The task amount issued is adjusted flexibly in the information returned, and dynamically maintains the load balancing of task main frame.
Brief description of the drawings
By referring to description of the following drawings to the embodiment of the present invention, above-mentioned and other purpose of the invention, feature and Advantage will be apparent from, in the accompanying drawings:
Fig. 1 is the equalization scheduling method of distributed task scheduling of the present invention and the frame principles schematic diagram of system;
Fig. 2 is scheduling strategy principle schematic diagram of the present invention;
Fig. 3 is the theory structure schematic diagram of the balance dispatching system of distributed task scheduling of the present invention;
Fig. 4 is the theory structure schematic diagram of the task scheduling modules;
Fig. 5 is the theory structure schematic diagram of mission dispatching module of the present invention;
Fig. 6 is the overview flow chart of the equalization scheduling method of distributed task scheduling of the present invention;
Fig. 7 be distributed task scheduling of the present invention balance dispatching in task scheduling flow chart;
Fig. 8 is to issue queue schematic diagram in caching;
Fig. 9 be distributed task scheduling of the present invention balance dispatching in mission dispatching flow chart;
Figure 10 is the structural representation of task main frame of the present invention;
Figure 11 is flow chart when task main frame of the present invention performs task.
Embodiment
Below based on embodiment, present invention is described, but the present invention is not restricted to these embodiments.Under It is detailed to describe some specific detail sections in the literary detailed description to the present invention.Do not have for a person skilled in the art The description of these detail sections can also understand the present invention completely.In order to avoid obscuring the essence of the present invention, known method, mistake Journey, flow do not describe in detail.What other accompanying drawing was not necessarily drawn to scale.
Flow chart, block diagram in accompanying drawing illustrate the possible system frame of the system of the embodiment of the present invention, method, apparatus Frame, function and operation, the square frame on flow chart and block diagram can represent a module, program segment or only one section of code, institute It is all the executable instruction for realizing regulation logic function to state module, program segment and code.It should also be noted that described realize rule Determining the executable instruction of logic function can reconfigure, so as to generate new module and program segment.Therefore accompanying drawing square frame with And square frame order is used only to the process and step of preferably diagram embodiment, without should be in this, as the limit to invention itself System.
In order to equalization task main frame load, it is necessary to which flexible configuration scheduling strategy and mission dispatching parameter, the present invention pass through Offer is dispatched, issued, monitoring, statistical mechanism, and mission dispatching parameter is adjusted flexibly according to current operating situation, specifically such as Fig. 1 institutes Show, be the equalization scheduling method of distributed task scheduling of the present invention and the principle framework schematic diagram of system.
Control centre is responsible for task scheduling and mission dispatching, in task scheduling, a number of need that will calculate Being performed for task is loaded into task buffer.During mission dispatching, calculated by mission dispatching algorithm for each task main frame The amount of issuing, and from caching take out respective numbers mission dispatching to task mainframe cluster in corresponding main frame.
When carrying out task scheduling, task scheduling strategy is read, is scheduled according to dispatching algorithm.
In mission dispatching, task scheduling strategy is read, calculating parameter is obtained, is issued according to mission dispatching algorithm.
When needing to use tasks synchronization, it is that executable task sets synchrolock by Redis databases, is only arranged to The task of work(could perform.
Main frame is by task action result, executable task queue state, in the cycle after the Information encapsulation such as tasks carrying quantity Feed back to control centre.Control centre relies on feedback information dynamic adjustment scheduling and the task quantity issued, i.e., scheduling quantum is with Hair amount.
As shown in Fig. 2 the principle schematic diagram for above-described scheduling strategy.
Different task groups are created according to function or type, as shown in Fig. 2 sharing 4 task groups, respectively task groups 1 To task groups 4, respective scheduling strategy, i.e. scheduling strategy 1 to scheduling strategy 4 are configured for each task groups.Scheduling strategy is at least Including tasks carrying node packet configuration information.
Wherein, due to when carrying out task scheduling and mission dispatching, a variety of methods, method provided by the invention can be used It is one of which.In the scheduling strategy shown in Fig. 2, except method of the present invention, other methods can also be used, because And dispatching algorithm type this parameter is further comprises in scheduling strategy, to distinguish the task groups are scheduled and under During hair task, using any method.
By tasks carrying node packet configuration information come configure which node (i.e. task main frame) can perform which appoint Business group.In addition, there is some other configurations, such as Timeout policy, it is therefore an objective to some processing methods are set, for dispatching, under Send out the situation of time-out.Similarly, there can also be some other configurations, due to not close with relation of the present invention, thus in this hair Repeated no more in bright.
For each task groups, multiple operation plans are custom made with, each operation plan corresponds to a series of executable task-sets Close, operation plan mainly includes task type, dispatching cycle, dispatch weight and scheduling script etc..
Control centre calculates the scheduling quantum of each operation plan by dispatching algorithm, respectively will be to should operation plan Task be loaded into caching in corresponding task queue.According to the amount of issuing for issuing algorithm and calculating each main frame, issued described The task of amount is taken out from corresponding task queue, is issued to corresponding task main frame.
According to foregoing principle and scheduling strategy framework, the invention provides a kind of balance dispatching of the distributed task scheduling System, the theory structure schematic diagram of one embodiment are as shown in Figure 3.
The balance dispatching system of the distributed task scheduling includes control centre 1 and task mainframe cluster 2, wherein, the tune Degree center 1 includes:
Configuration module 11, for creating multiple tasks group according to function or type, to be adjusted corresponding to the configuration of each task groups Degree strategy;Multiple operation plans are customized for each task groups, are divided into the task groups accordingly according to the operation plan Executable set of tasks;
Task scheduling modules 12, according to tasks carrying feedback information and the configuration parameter of operation plan, it is calculated each The scheduling quantum of operation plan, and the task that needs are performed is loaded into the corresponding task queue in task buffer 14;
Mission dispatching module 13, according to the configuration parameter of operation plan in tasks carrying feedback information and task groups, calculate The amount of issuing of each task main frame is obtained, according to the amount of issuing, from described in the task queue taking-up in the task buffer 14 Executable task, is handed down to corresponding task main frame;
Task buffer 14, for storing the needing to perform of the task, including multiple tasks queue;With
Monitoring module 15, for receiving task main frame feedback information, the tasks carrying amount of setting time section is obtained, and calculated The average tasks carrying amount of each task groups in the period.
Wherein, in addition the scheduling strategy, also may be used as it was previously stated, including at least the configuration of tasks carrying host packet With including task scheduling algorithm type, Timeout policy etc.;The operation plan includes task type, dispatching cycle, dispatch weight With scheduling script etc..
The task scheduling modules as shown in figure 4, including the first data-reading unit 121, the first computing unit 122 and appoint Business is loaded into unit 123.Wherein, the first data-reading unit 121 is averaged for reading the task groups that the monitoring module 15 obtains Arrange parameter in tasks carrying amount and scheduling strategy and operation plan;First computing unit 122 is used to be calculated according to preset schedule Method, corresponding supplemental characteristic is obtained from first data-reading unit 121 successively, is calculated according to corresponding algorithm flow To the scheduling quantum of each operation plan;Task is loaded into unit 123 according to the scheduling quantum of each operation plan, and the task is loaded into Corresponding task queue in caching.
The task scheduling modules 12 also include synchrolock mark setting unit 124, for task to be loaded into caching Before, set synchrolock to identify for the task, when task main frame is performing the task, identified when reading the synchrolock When, synchrolock is set to the task.
As shown in figure 5, be the theory structure schematic diagram of mission dispatching module of the present invention, the mission dispatching module 13 Including the second data-reading unit 131, the second computing unit 132 and mission dispatching unit 133.Wherein, second data are read Unit 131 is taken to read in the average tasks carrying amount of task groups and scheduling strategy and operation plan that the monitoring module 15 obtains Relevant parameter, such as current task queue length, the weight of operation plan, the dispatching cycle of operation plan and task host number Deng;Second computing unit 132 issues algorithm, i.e., different formula and order according to default, successively from the described second number According to corresponding supplemental characteristic is obtained in reading unit 131, each task main frame amount of issuing is calculated;The mission dispatching unit 133 according to each task main frame amount of issuing, from task buffer corresponding task queue take out the quantity task be sent to it is described Task main frame.
As shown in fig. 6, the overview flow chart of the equalization scheduling method for distributed task scheduling of the present invention, specific bag Include:
Step S1, multiple tasks group is created according to function or type, for scheduling strategy corresponding to the configuration of each task groups;
Step S2, multiple operation plans, the corresponding executable task-set of each operation plan are customized for each task groups Close;
Step S3, the tasks carrying amount of each task groups is monitored, according to scheduling strategy, each operation plan is calculated Scheduling quantum Q, and the task that needs are performed is loaded into the task queue in caching;
Step S4, according to the tasks carrying amount of each task groups, according to scheduling strategy, each task main frame is calculated The amount of issuing C;
Step S5, according to the amount of issuing of each task main frame, taken out from the caching under the executable task Issue corresponding task main frame.
Specifically, in step 3, the task scheduling amount Q of each operation plan flow is calculated as shown in fig. 7, tool Body is as follows:
Step S31, corresponding parameter is read from scheduling strategy, such as the maximum scheduling quantum Q in the task groupsmaxWith issue Queue length maximum Qb, in this, as threshold threshold when calculating;
Step S32, received from the monitoring module of foregoing control centre in the feedback information of task main frame and obtain a time The tasks carrying amount of section;Calculate in a period of time, such as 5 minutes, the average value of tasks carrying amount in task groups, then according to default Fine setting coefficient, by average tasks carrying amount be multiplied by it is described fine setting obtain the current task execution amount of each task groupsWherein, The fine setting coefficient is a floating-point coefficient more than 0, and this floating-point coefficient can manually be set, and be mainly used in result of calculation Artificial fine setting, value are usually located at but are not limited between 0.8-1.2.
Step S33, foundation currently issue queue length Qa, using formula Qe=Qb-QaCalculate and currently issue queue length QaWith issuing queue length maximum QbDifference Qe
Step S34, ensureing to be no more than maximum scheduling quantum QmaxWith the Q of maximum queue lengthbIn the case of,And QeTake maximum Value is as this scheduling total amount Qt
Step S35, calculate operation plan weight summation Wsum,Wherein, WiFor the power of i-th of operation plan Weight, i is natural number 1,2,3 ....
Step S36, according to the weight and the ratio of weight summation of each operation plan and this scheduling total amount, according to formula Qi=Qt×(Wi÷Wsum), calculate the scheduling quantum Q of each operation plani
As shown in figure 8, the schematic diagram for issuing queue for a task groups embodiment in present invention caching.Wherein, it is described Task groups share 7 operation plans, and the scheduling quantum Q that flow respectively obtains 7 operation plans is stated by upper algorithmp1-Qp7
In mission dispatching, whether identical for the weight of multiple operation plans, it issues algorithm and is slightly different.Such as Fig. 9 It is shown, it is described that each task main frame is calculated when being that the weight of multiple operation plans in the task groups is different The step of mission dispatching amount C:
Step S41a, the weight summation of multiple operation plans in calculating task group
Step S42a, according to current task execution amount, weight and weight summation, calculated according to formula 2-1 for each The amount of issuing of operation plan,
Step S43a, according to current task queue length, calculating each task main frame averagely needs to issue quantity
Step S44a,And CaiIn take minimum value as the task main frame amount of issuing C.
It is described that each task master is calculated if there is identical weight in multiple scheduling in the task groups in the works The step of mission dispatching amount of machine, includes:
Step S41b, the weight summation in calculating task group after multiple operation plan weight duplicate removalsIts In, the m be duplicate removal after weight number, Wi' it is i-th of weight.
Step S42b, according to current task execution amount, duplicate removal weight and weight summation, calculated according to formula 2-2 each The amount of the issuing C' of weightw,
Step S43b, calculate the cycle summation of the operation plan under equal weightWherein, the IiFor i-th The dispatching cycle of individual operation plan.
Step S44b, the cycle inverse ratio R of the operation plan under equal weight is calculated according to formula 2-3i
Ri=I'sum÷Ii2-3;
Step S45b, the cycle inverse ratio sum of the operation plan under equal weight is calculated according to formula 2-4, it is total to obtain inverse ratio And Rsum
Step S46b, according to formula 2-5, the cycle inverse ratio R according to the operation plan under equal weightiAnd inverse ratio summation RsumWith the amount of the issuing C of the weightwObtain mission dispatching amount C'a of the operation plan in the cyclei
C'ai=C'w×(Ri÷Rsum) 2-5;
Step S47b, according to current task queue length, calculating each task main frame averagely needs to issue quantity
Step S48b,And C'aiIn take minimum value as the task main frame amount of issuing C.
The amount of issuing of each task main frame has been obtained according to above-mentioned flow, has issued to measure to go out on missions by this from caching and issues To corresponding task main frame.
In the present invention, the structural principle of the task main frame is as shown in Figure 10, and the task main frame obtains including task Unit 21, task executing units 22, feedback unit 23 and synchrolock setting unit 24, wherein, the task acquiring unit 21 from Control centre obtains the task of respective numbers (being that the amount of issuing is calculated in control centre);The task executing units 22 perform The task of acquisition;The feedback unit 23 sends tasks carrying feedback information to control centre;Synchrolock setting unit 24 is used for Before execution task, the synchrolock mark in task, synchrolock is set to the task, after the task is completed, Remove the synchrolock.
Wherein, the process of the task main frame execution task is as shown in figure 11.
Step S1a, the task that quantity is the amount of issuing is obtained from the control centre, specifically, the task main frame is complete Into after its task, to control centre's request task, control centre is calculated to should task main frame according to algorithm is issued The amount of issuing, the task of the amount of issuing is sent to the task main frame.
Step S2a, after obtaining these tasks, the synchrolock mark in the task, perform in Redis databases Setnx (key, value) orders for the task, the synchrolock is set.
Step S3a, the task is performed successively.
Step S4a, determine whether that task is completed, if task is completed, then perform step S5a;If it is not complete, Then continue step S3a, perform the task.
Step S5a, remove described synchrolock.
Step S6a, judge whether to reach feedback cycle, if arrived, perform step S7a, if be less than, continue to hold Row task.
Step S7a, the packing of tasks carrying situation is fed back into scheduler task center.
Step S8a, judge whether to complete all tasks, if do not completed, continue executing with task;If all complete , the implementation procedure for terminating this subtask, start new task acquisition, implementation procedure.
Under default situations, a task synchronization can only be got and performed by a main frame, if being not carried out in the cycle, The task is dispatched and issued again to next cycle, and the situation that same task synchronization multiple main frames perform just occurs, Therefore main frame all can first set lock before execution task, only setting successfully can just perform;Set and unsuccessful wait for surpassing When after directly return.
The present invention is effectively improved tasks carrying efficiency and task main frame by task scheduling and the algorithm of mission dispatching Utilization rate, the balanced load of task main frame.Also, by Redis database realizing synchrolocks, network jitter is avoided to produce Lock conflict, lift the stability of tasks carrying.The present invention is managed by group task, flexibly customized operation plan, moreover, this Tasks carrying feedback mechanism is supported in invention, can monitor task fall, the health condition of mission dispatching and tasks carrying, and according to feedback The task amount issued is adjusted flexibly in the information returned, and dynamically maintains the load balancing of task main frame.
The preferred embodiments of the present invention are the foregoing is only, are not intended to limit the invention, for those skilled in the art For, the present invention can have various changes and change.All any modifications made within spirit and principles of the present invention, it is equal Replace, improve etc., it should be included in the scope of the protection.

Claims (15)

1. a kind of equalization scheduling method of distributed task scheduling, including:
Multiple tasks group is created according to function or type, for scheduling strategy corresponding to the configuration of each task groups;
Multiple operation plans, the corresponding executable set of tasks of each operation plan are customized for each task groups;
The current task execution amount of each task groups is monitored, according to configuration parameter, task of each operation plan is calculated is adjusted Measurement, and the task queue that will be loaded into the task of the task scheduling amount respective amount in task buffer;
According to the current task execution amount and configuration parameter of each task groups, the mission dispatching of each task main frame is calculated Amount;
According to the amount of issuing of each task main frame, the corresponding executable task of task queue taking-up from the task buffer It is handed down to corresponding task main frame.
2. the equalization scheduling method of distributed task scheduling as claimed in claim 1, wherein, the scheduling strategy comprises at least task The packet configuration of main frame;The operation plan comprises at least dispatching cycle and dispatch weight.
3. the equalization scheduling method of distributed task scheduling as claimed in claim 2, wherein, it is described to monitor the current of each task groups The step of tasks carrying amount, includes:
The tasks carrying feedback information of reception task main frame, obtain the general assignment execution amount of a period;
Calculate the average tasks carrying amount in the period;
According to default fine setting coefficient, by average tasks carrying amount be multiplied by the fine setting coefficient obtain each task groups as predecessor Business execution amount
Wherein, the value of the fine setting coefficient is 0.8-1.2.
4. the equalization scheduling method of distributed task scheduling as claimed in claim 3, wherein, it is described that each operation plan is calculated Task scheduling amount the step of include:
According to task queue length current in caching, the current task queue length and maximum task queue length are calculated Difference Qe
In the case where ensureing no more than maximum scheduling quantum and maximum queue length,And QeMaximum is taken to be adjusted as this subtask Spend total amount Qt
The weight summation W of multiple operation plans of each task groups is calculated according to sum formulasum
Weight W according to each operation planiWith weight summation WsumRatio and this task scheduling total amount Qt, according to formula 1- 1 calculates the scheduling quantum Q of each operation plani,
Qi=Qt×(Wi÷Wsum) 1-1。
5. the equalization scheduling method of distributed task scheduling as claimed in claim 3, wherein, if multiple tune in the task groups Spend plan weight it is different, it is described each task main frame is calculated mission dispatching amount the step of include:
According to the weight summation W of multiple operation plans in sum formula calculating task groupsum
According to current task execution amount, weight and weight summation, issuing for each operation plan is calculated according to formula 2-1 Measure Cai,
<mrow> <msub> <mi>Ca</mi> <mi>i</mi> </msub> <mo>=</mo> <mover> <msub> <mi>C</mi> <mi>t</mi> </msub> <mo>&amp;OverBar;</mo> </mover> <mo>&amp;times;</mo> <mrow> <mo>(</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>&amp;divide;</mo> <msub> <mi>W</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mn>2</mn> <mo>-</mo> <mn>1</mn> <mo>;</mo> </mrow>
According to current task queue length, calculating each task main frame averagely needs the amount of issuing
And CaiIn take minimum value as the task main frame amount of issuing C;
It is described that each task main frame is calculated if there is identical weight in multiple scheduling in the task groups in the works The step of mission dispatching amount C, includes:
Weight summation in calculating task group after multiple operation plan weight duplicate removalsWherein, the m is after duplicate removal Weight number, Wi' it is i-th of weight;
Foundation current task execution amount, duplicate removal weight and weight summation, the amount of the issuing C of each weight is calculated according to formula 2-2 'w,
<mrow> <msub> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> <mi>w</mi> </msub> <mo>=</mo> <mover> <msub> <mi>C</mi> <mi>t</mi> </msub> <mo>&amp;OverBar;</mo> </mover> <mo>&amp;times;</mo> <mrow> <mo>(</mo> <msub> <mi>W</mi> <mi>i</mi> </msub> <mo>&amp;divide;</mo> <msub> <msup> <mi>W</mi> <mo>&amp;prime;</mo> </msup> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mn>2</mn> <mo>-</mo> <mn>2</mn> <mo>;</mo> </mrow>
Calculate the cycle summation of the operation plan under equal weightWherein, the IiFor the tune of i-th of operation plan Spend the cycle;
The cycle inverse ratio R of the operation plan under equal weight is calculated according to formula 2-3i,
Ri=I'sum÷Ii2-3;
The cycle inverse ratio sum of the operation plan under equal weight is calculated according to formula 2-4, obtains inverse ratio summation Rsum,
<mrow> <msub> <mi>R</mi> <mrow> <mi>s</mi> <mi>u</mi> <mi>m</mi> </mrow> </msub> <mo>=</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>R</mi> <mi>i</mi> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mn>2</mn> <mo>-</mo> <mn>4</mn> <mo>;</mo> </mrow>
According to formula 2-5, the cycle inverse ratio R according to the operation plan under equal weightiAnd inverse ratio summation RsumWith the weight The amount of issuing CwObtain mission dispatching amount C'a of the operation plan in the cyclei,
C'ai=C'w×(Ri÷Rsum) 2-5;
According to current task queue length, calculating each task main frame averagely needs to issue quantity
And C'aiIn take minimum value as the task main frame amount of issuing C.
6. the equalization scheduling method of distributed task scheduling as claimed in claim 1, wherein, in addition to set for the pending task The step of putting synchrolock and removing the synchrolock after the completion of the task.
7. the equalization scheduling method of distributed task scheduling as claimed in claim 6, wherein, task main frame leads to before execution task Cross setnx (key, the value) orders performed in Redis databases and the synchrolock is set for the task.
8. a kind of balance dispatching center of distributed task scheduling, wherein, including:
Configuration module, for creating multiple tasks group according to function or type, for scheduling strategy corresponding to the configuration of each task groups; Multiple operation plans are customized for each task groups, the task groups are divided into corresponding executable according to the operation plan Business set;
Task scheduling modules, according to tasks carrying feedback information and the configuration parameter of operation plan, each scheduling meter is calculated The scheduling quantum drawn, and the task queue that will be loaded into the task of the task scheduling amount respective amount in task buffer;
Mission dispatching module, according to the configuration parameter of operation plan in tasks carrying feedback information and task groups, it is calculated every The amount of issuing of individual task main frame, according to the amount of issuing, corresponding task queue taking-up is executable from the task buffer appoints Business is handed down to corresponding task main frame;With
Monitoring module, for receiving task main frame feedback information, when obtaining the tasks carrying amount of setting time section, and calculating described Between each task groups in section tasks carrying amount.
9. the balance dispatching center of distributed task scheduling as claimed in claim 8, wherein, the task scheduling modules include:
First data-reading unit, for reading the arrange parameter of scheduling strategy and operation plan and being obtained from the monitoring module Tasks carrying amount;
First computing unit, for according to preset schedule algorithm, being obtained successively from first data-reading unit corresponding Supplemental characteristic, the scheduling quantum of each operation plan is calculated according to corresponding algorithm flow;With
Task is loaded into unit, and according to the scheduling quantum of each operation plan, the task is loaded into the task queue in caching.
10. the balance dispatching center of distributed task scheduling as claimed in claim 9, wherein, the task scheduling modules also include:
Synchrolock identifies setting unit, for setting synchrolock to identify for scheduled good executable task.
11. the balance dispatching center of distributed task scheduling as claimed in claim 8, wherein, the mission dispatching module includes:
Second data-reading unit, for reading tasks carrying amount and scheduling strategy and the operation plan that the monitoring module obtains Arrange parameter;
Second computing unit, for issuing algorithm according to default, obtained successively from second data-reading unit corresponding Supplemental characteristic, each task main frame amount of issuing is calculated according to corresponding algorithm flow;With
Mission dispatching unit, according to each task main frame amount of issuing, corresponding task queue taking-up can from the task buffer Perform mission dispatching and give corresponding task main frame.
12. a kind of balance dispatching device of distributed task scheduling, wherein, including memory and processor, the memory is for depositing Data and instruction are stored up, the processor configures as follows according to the instruction:
Multiple tasks group is created according to function or type, for scheduling strategy corresponding to the configuration of each task groups;
Multiple operation plans, the corresponding executable set of tasks of each operation plan are customized for each task groups;
The current task execution amount of each task groups is monitored, according to configuration parameter, task of each operation plan is calculated is adjusted Measurement, and the task queue that will be loaded into the task of the task scheduling amount respective amount in task buffer;
According to the current task execution amount and configuration parameter of each task groups, the mission dispatching of each task main frame is calculated Amount;
According to the amount of issuing of each task main frame, the corresponding executable task of task queue taking-up from the task buffer It is handed down to corresponding task main frame.
13. a kind of balance dispatching system of distributed task scheduling, wherein, including:
Control centre as described in claim 8-11 is any, and
Task mainframe cluster, being issued for receiving the control centre for task perform the task, and to the control centre Send tasks carrying feedback information.
14. the balance dispatching system of distributed task scheduling as claimed in claim 13, the task main frame includes:
Task acquiring unit, for obtaining the task of respective numbers from control centre;
Task executing units, for performing obtaining for task;
Feedback unit, for sending tasks carrying feedback information to control centre;With
Synchrolock setting unit, for before execution task, the synchrolock mark in task, being set to the task same Step lock, after the task is completed, removes the synchrolock.
15. the balance dispatching system of distributed task scheduling as claimed in claim 14, wherein, in addition to Redis databases, it is described Setnx (key, the value) orders that the synchrolock setting unit of task main frame is performed in Redis databases are set for the task The synchrolock, after the tasks carrying is complete, remove the synchrolock.
CN201610615952.3A 2016-07-29 2016-07-29 Balanced scheduling center, method, system and device for distributed tasks Active CN107665144B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610615952.3A CN107665144B (en) 2016-07-29 2016-07-29 Balanced scheduling center, method, system and device for distributed tasks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610615952.3A CN107665144B (en) 2016-07-29 2016-07-29 Balanced scheduling center, method, system and device for distributed tasks

Publications (2)

Publication Number Publication Date
CN107665144A true CN107665144A (en) 2018-02-06
CN107665144B CN107665144B (en) 2021-02-26

Family

ID=61115746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610615952.3A Active CN107665144B (en) 2016-07-29 2016-07-29 Balanced scheduling center, method, system and device for distributed tasks

Country Status (1)

Country Link
CN (1) CN107665144B (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109410040A (en) * 2018-11-07 2019-03-01 杭州创金聚乾网络科技有限公司 A kind of match method, device and the equipment of loan application and investment application
CN109408212A (en) * 2018-09-28 2019-03-01 平安科技(深圳)有限公司 Task schedule component building method, device and storage medium, server
CN109542600A (en) * 2018-11-15 2019-03-29 口碑(上海)信息技术有限公司 Distributed task dispatching system and method
CN109739634A (en) * 2019-01-16 2019-05-10 中国银联股份有限公司 A kind of atomic task execution method and device
CN110287245A (en) * 2019-05-15 2019-09-27 北方工业大学 Method and system for scheduling and executing distributed ETL (extract transform load) tasks
WO2019219005A1 (en) * 2018-05-16 2019-11-21 杭州海康威视数字技术股份有限公司 Data processing system and method
CN110569263A (en) * 2019-08-27 2019-12-13 苏宁云计算有限公司 Real-time data deduplication counting method and device
CN110750349A (en) * 2019-10-26 2020-02-04 武汉中海庭数据技术有限公司 Distributed task scheduling method and system
CN111338882A (en) * 2018-12-18 2020-06-26 北京京东尚科信息技术有限公司 Data monitoring method, device, medium and electronic equipment
CN111506412A (en) * 2020-04-22 2020-08-07 上海德拓信息技术股份有限公司 Distributed asynchronous task construction and scheduling system and method based on Airflow
CN111625337A (en) * 2020-05-28 2020-09-04 浪潮电子信息产业股份有限公司 Task scheduling method and device, electronic equipment and readable storage medium
CN111953538A (en) * 2020-07-31 2020-11-17 深圳市高德信通信股份有限公司 CDN bandwidth scheduling system based on big data processing
CN112667393A (en) * 2020-12-19 2021-04-16 前海飞算科技(深圳)有限公司 Method and device for building distributed task computing scheduling framework and computer equipment
CN113032131A (en) * 2021-05-26 2021-06-25 天津中新智冠信息技术有限公司 Redis-based distributed timing scheduling system and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101038559A (en) * 2006-09-11 2007-09-19 中国工商银行股份有限公司 Batch task scheduling engine and dispatching method
CN101458634A (en) * 2008-01-22 2009-06-17 中兴通讯股份有限公司 Load equilibration scheduling method and device
CN103793272A (en) * 2013-12-27 2014-05-14 北京天融信软件有限公司 Periodical task scheduling method and periodical task scheduling system
CN103984594A (en) * 2014-05-14 2014-08-13 上海上讯信息技术股份有限公司 Task scheduling method and system based on distributed configurable weighting algorithm

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101038559A (en) * 2006-09-11 2007-09-19 中国工商银行股份有限公司 Batch task scheduling engine and dispatching method
CN101458634A (en) * 2008-01-22 2009-06-17 中兴通讯股份有限公司 Load equilibration scheduling method and device
CN103793272A (en) * 2013-12-27 2014-05-14 北京天融信软件有限公司 Periodical task scheduling method and periodical task scheduling system
CN103984594A (en) * 2014-05-14 2014-08-13 上海上讯信息技术股份有限公司 Task scheduling method and system based on distributed configurable weighting algorithm

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019219005A1 (en) * 2018-05-16 2019-11-21 杭州海康威视数字技术股份有限公司 Data processing system and method
CN109408212A (en) * 2018-09-28 2019-03-01 平安科技(深圳)有限公司 Task schedule component building method, device and storage medium, server
CN109408212B (en) * 2018-09-28 2023-09-19 平安科技(深圳)有限公司 Task scheduling component construction method and device, storage medium and server
CN109410040A (en) * 2018-11-07 2019-03-01 杭州创金聚乾网络科技有限公司 A kind of match method, device and the equipment of loan application and investment application
CN109542600A (en) * 2018-11-15 2019-03-29 口碑(上海)信息技术有限公司 Distributed task dispatching system and method
CN109542600B (en) * 2018-11-15 2020-12-25 口碑(上海)信息技术有限公司 Distributed task scheduling system and method
CN111338882A (en) * 2018-12-18 2020-06-26 北京京东尚科信息技术有限公司 Data monitoring method, device, medium and electronic equipment
CN109739634A (en) * 2019-01-16 2019-05-10 中国银联股份有限公司 A kind of atomic task execution method and device
CN110287245A (en) * 2019-05-15 2019-09-27 北方工业大学 Method and system for scheduling and executing distributed ETL (extract transform load) tasks
CN110287245B (en) * 2019-05-15 2021-03-19 北方工业大学 Method and system for scheduling and executing distributed ETL (extract transform load) tasks
CN110569263A (en) * 2019-08-27 2019-12-13 苏宁云计算有限公司 Real-time data deduplication counting method and device
CN110569263B (en) * 2019-08-27 2022-11-22 苏宁云计算有限公司 Real-time data deduplication counting method and device
CN110750349A (en) * 2019-10-26 2020-02-04 武汉中海庭数据技术有限公司 Distributed task scheduling method and system
CN110750349B (en) * 2019-10-26 2022-07-29 武汉中海庭数据技术有限公司 Distributed task scheduling method and system
CN111506412A (en) * 2020-04-22 2020-08-07 上海德拓信息技术股份有限公司 Distributed asynchronous task construction and scheduling system and method based on Airflow
CN111506412B (en) * 2020-04-22 2023-04-25 上海德拓信息技术股份有限公司 Airflow-based distributed asynchronous task construction and scheduling system and method
CN111625337A (en) * 2020-05-28 2020-09-04 浪潮电子信息产业股份有限公司 Task scheduling method and device, electronic equipment and readable storage medium
CN111953538A (en) * 2020-07-31 2020-11-17 深圳市高德信通信股份有限公司 CDN bandwidth scheduling system based on big data processing
CN112667393A (en) * 2020-12-19 2021-04-16 前海飞算科技(深圳)有限公司 Method and device for building distributed task computing scheduling framework and computer equipment
CN113032131A (en) * 2021-05-26 2021-06-25 天津中新智冠信息技术有限公司 Redis-based distributed timing scheduling system and method

Also Published As

Publication number Publication date
CN107665144B (en) 2021-02-26

Similar Documents

Publication Publication Date Title
CN107665144A (en) The balance dispatching center of distributed task scheduling, mthods, systems and devices
CN105912401B (en) A kind of distributed data batch processing system and method
Chen et al. Multiple states based temporal consistency for dynamic verification of fixed‐time constraints in grid workflow systems
CN107291546A (en) A kind of resource regulating method and device
Aktulga et al. Topology-aware mappings for large-scale eigenvalue problems
CN110287245A (en) Method and system for scheduling and executing distributed ETL (extract transform load) tasks
CN105095327A (en) Distributed ELT system and scheduling method
CN104239144A (en) Multilevel distributed task processing system
US9244721B2 (en) Computer system and divided job processing method and program
JP6083290B2 (en) Distributed processing system
CN109416647A (en) The system and method for scheduler task and management computational resource allocation for closed-loop control system
CN110928655A (en) Task processing method and device
CN107548490A (en) Humidometer in parallel computation
US9207978B2 (en) Method and system for efficient execution of ordered and unordered tasks in multi-threaded and networked computing
CN107621978A (en) A kind of High Availabitity task processing Controlling model under parallel computation environment
CN111160873A (en) Batch processing device and method based on distributed architecture
CN115168058B (en) Thread load balancing method, device, equipment and storage medium
CN102025753B (en) Load balancing method and equipment for data resources of servers
CN105791166B (en) A kind of method and system of load balancing distribution
CN112162839A (en) Task scheduling method and device, computer equipment and storage medium
CN105335236B (en) A kind of distributed dynamic load leveling dispatching method and device of collecting evidence
CN108287747A (en) Method and apparatus for virtual machine backup
CN114579284A (en) Task scheduling method and device
CN105874453B (en) Consistent tenant experience is provided for more tenant databases
CN101383721B (en) Derived processing method and apparatus for performance counter

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