CN110046034A - Task acquisition methods and device - Google Patents

Task acquisition methods and device Download PDF

Info

Publication number
CN110046034A
CN110046034A CN201810034865.8A CN201810034865A CN110046034A CN 110046034 A CN110046034 A CN 110046034A CN 201810034865 A CN201810034865 A CN 201810034865A CN 110046034 A CN110046034 A CN 110046034A
Authority
CN
China
Prior art keywords
task
allocated
server
locked
resource
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
CN201810034865.8A
Other languages
Chinese (zh)
Other versions
CN110046034B (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 Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum 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 Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201810034865.8A priority Critical patent/CN110046034B/en
Publication of CN110046034A publication Critical patent/CN110046034A/en
Application granted granted Critical
Publication of CN110046034B publication Critical patent/CN110046034B/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention provides a kind of task acquisition methods and device, a task to be allocated in task list to be allocated is locked first, and obtain the relevant information of the task to be allocated locked, it is then based on the relevant information of task to be allocated and the idling-resource of first server, determine the whether executable task to be allocated locked of first server, in the case where determining that the task to be allocated locked can be performed in first server, actively obtain the task to be allocated locked, first server and second server in this way in server cluster is without disposing Jobserver, task to be allocated actively can be obtained from second server by first server.And acquired task to be allocated is its executable task to be allocated, the executable task to be allocated is that the idling-resource of relevant information and first server based on task to be allocated is determined, task to be allocated is rationally obtained, to utmostly utilize the resource of entire server cluster.

Description

Task acquisition methods and device
Technical field
The present invention relates to task processing technology fields, more specifically more particularly to a kind of task acquisition methods and device.
Background technique
Server cluster at present can include: primary server and at least one from server, primary server and at least one from Be deployed on server Jobserver (job scheduling engine), such primary server and at least one from can between server Communicated by Jobserver, and primary server can by Jobserver at least one from server distribute task, with by At least one executes task from server.
Wherein primary server is at least one from the mode of server distribution task: primary server distributes task one by one To each from server, specific primary server often gets task to be allocated, the slave server recorded according to primary server List distributes task to be allocated from the sequence first from server list one by one since server, but main It is more than its processing capacity that the mode of this linear distribution task of server, which will lead to the task that part is obtained from server, and portion Divide and be in idle condition from server, so that the resource of entire server cluster can not be utilized to the greatest extent.
Summary of the invention
In view of the above problems, it proposes on the present invention overcomes the above problem or at least be partially solved in order to provide one kind The task acquisition methods and device of problem are stated, to efficiently use server resource.Technical solution is as follows:
The present invention provides a kind of task acquisition methods, applied to the first server in server cluster, first clothes Business device is communicated with the second server in the server cluster, which comprises
A task to be allocated in the task list to be allocated of the second server storage is locked, and obtains and is locked Task to be allocated relevant information;
The idling-resource of relevant information and first server based on the task to be allocated, determines the first server Whether the task to be allocated locked can be performed;
In the case where determining that the task to be allocated locked can be performed in the first server, actively acquisition is locked Task to be allocated.
Preferably, the idling-resource of the relevant information and first server based on the task to be allocated, determines institute Stating the whether executable task to be allocated locked of first server includes: the relevant information based on the task to be allocated, is estimated Calculate the resource of the required by task to be allocated locked;
Under the resource of the required by task to be allocated locked and the matched situation of idling-resource of the first server, Determine the executable task to be allocated locked of the first server;
In the resource of the required by task to be allocated locked and the unmatched situation of idling-resource of the first server Under, determine the not executable task to be allocated locked of the first server;
The method also includes: the case where determining the first server not executable task to be allocated locked Under, release the locking to the task to be allocated locked.
Preferably, the relevant information based on the task to be allocated estimates the required by task to be allocated locked Resource includes: the relevant information based on the task to be allocated, executed from historic task got in the Resources list with it is described to The historic task of the matched task of distribution task executes record;
Execute resource needed for the execution matching task that records in record based on historic task, estimate locked it is to be allocated The resource of required by task, it is described with the matched task of task to be allocated be in the relevant information of the task to be allocated Each information in the identical or relevant information with the task to be allocated of each information meets the task of preset condition;
Or
The relevant information based on the task to be allocated estimates the resource packet of the required by task to be allocated locked Include: the relevant information based on task to be allocated and the Resource Calculation method being previously obtained obtain the resource of required by task to be allocated.
Preferably, a task packet to be allocated in the task list to be allocated of the locking second server storage It includes: in the identical situation of task grade of all tasks to be allocated in the task list to be allocated, from described to be allocated A task to be allocated is locked in task list at random;
In the case that the task grade of the task to be allocated of preset quantity is different in the task list to be allocated, from institute State the locking highest task to be allocated of task grade in task list to be allocated;
Or
A task to be allocated in the task list to be allocated of the locking second server storage includes: locking The second server is the task to be allocated that the first server is specified.
Preferably, the method also includes: the task acquisition instruction that the second server sends is received, wherein described appoint Task identification information is carried in business acquisition instruction, and the task acquisition instruction is for determining all first servers not It is generated in the case where the corresponding task to be allocated of the task identification information can be performed;
Actively obtain the corresponding task to be allocated of the task identification information.
The present invention also provides a kind of task acquisition device, applied to the first server in server cluster, described first Server is communicated with the second server in the server cluster, and described device includes:
Lock cell, one to be allocated in task list to be allocated for locking the second server storage Business, and obtain the relevant information of the task to be allocated locked;
Determination unit is determined for the idling-resource of relevant information and first server based on the task to be allocated The whether executable task to be allocated locked of the first server;
Acquiring unit, for leading in the case where determining that the task to be allocated locked can be performed in the first server It is dynamic to obtain the task to be allocated locked.
Preferably, the determination unit includes:
It estimates subelement, for the relevant information based on the task to be allocated, estimates the task institute to be allocated locked The resource needed;
Determine subelement, the idle money for resource and the first server in the required by task to be allocated locked In the matched situation in source, determine the executable task to be allocated locked of the first server, and for being locked In the unmatched situation of idling-resource of the resource of required by task to be allocated and the first server, the first service is determined The not executable task to be allocated locked of device;
Described device further include: unlocking unit, for determine the first server it is not executable locked to point In the case where task, the locking to the task to be allocated locked is released.
Preferably, the estimation subelement, specifically for the relevant information based on the task to be allocated, from historic task It executes to get in the Resources list and executes record with the historic task of the matched task of task to be allocated;
Execute resource needed for the execution matching task that records in record based on historic task, estimate locked it is to be allocated The resource of required by task, it is described with the matched task of task to be allocated be in the relevant information of the task to be allocated Each information in the identical or relevant information with the task to be allocated of each information meets the task of preset condition;
Or
The estimation subelement is filled specifically for the relevant information based on task to be allocated and the Resource Calculation being previously obtained It sets, obtains the resource of required by task to be allocated.
Preferably, the lock cell, specifically for all tasks to be allocated in the task list to be allocated In the identical situation of task grade, a task to be allocated is locked at random from the task list to be allocated;
In the case that the task grade of the task to be allocated of preset quantity is different in the task list to be allocated, from institute State the locking highest task to be allocated of task grade in task list to be allocated;
Or
The lock cell is to be allocated that the first server is specified specifically for locking the second server Business.
Preferably, described device further include: receiving unit refers to for receiving the task acquisition that the second server is sent It enables, wherein carrying task identification information in the task acquisition instruction, and the task acquisition instruction is used to determine own First server generates in the case where the corresponding task to be allocated of the task identification information not can be performed;
The acquiring unit is also used to actively obtain the corresponding task to be allocated of the task identification information.
The present invention also provides a kind of storage medium, the storage medium includes the program of storage, wherein described program executes Above-mentioned task acquisition methods.
The present invention also provides a kind of processor, the processor is for running program, wherein described program executes when running Above-mentioned task acquisition methods.
By above-mentioned technical proposal, the first server in server cluster is in active to be allocated of second server It is engaged in front of obtaining a task to be allocated in list, locks a task to be allocated in task list to be allocated first, and obtain The relevant information of the task to be allocated locked, is then based on the relevant information of task to be allocated and the idle of first server provides Source determines the whether executable task to be allocated locked of first server, is locked determining that first server is executable In the case where task to be allocated, the task to be allocated locked is actively obtained, in this way for the first service in server cluster For device and second server, first server and second server, can be by first server masters without disposing Jobserver It is dynamic that task to be allocated is obtained from second server.And task to be allocated acquired in first server is that first server can The task to be allocated executed, the executable task to be allocated of the first server are relevant informations based on task to be allocated and the What the idling-resource of one server was determined, therefore first server obtains it by considering the idling-resource of itself and can be performed Task to be allocated, task to be allocated is rationally obtained, thus utmostly utilize entire server cluster money Source.
The above description is only an overview of the technical scheme of the present invention, in order to better understand the technical means of the present invention, And it can be implemented in accordance with the contents of the specification, and in order to allow above and other objects of the present invention, feature and advantage can It is clearer and more comprehensible, the followings are specific embodiments of the present invention.
Detailed description of the invention
By reading the following detailed description of the preferred embodiment, various other advantages and benefits are common for this field Technical staff will become clear.The drawings are only for the purpose of illustrating a preferred embodiment, and is not considered as to the present invention Limitation.And throughout the drawings, the same reference numbers will be used to refer to the same parts.In the accompanying drawings:
The system architecture diagram for the server cluster that the exemplary embodiment that Fig. 1 shows the disclosure provides;
Fig. 2 shows the flow charts for the task acquisition methods that the exemplary embodiment of the disclosure provides;
A kind of structural schematic diagram for task acquisition device that the exemplary embodiment that Fig. 3 shows the disclosure provides;
The structural schematic diagram for another task acquisition device that the exemplary embodiment that Fig. 4 shows the disclosure provides.
Specific embodiment
Referring to Fig. 1, it illustrates the exemplary embodiment of the disclosure provide task acquisition methods and device based on The system architecture diagram of server cluster, the task acquisition methods and device can be applied to any of server cluster shown in Fig. 1 In first server (Fig. 1 is illustrated by taking three first servers as an example), deposited in the second server in the server cluster Task list to be allocated is contained, at least one task to be allocated is stored in the task list to be allocated.
Any first server is respectively corresponding with thread pool, sets what first server can be performed by respective thread pool Maximum task quantity, so that the primary task quantity executed of first server is no more than the maximum task quantity, in turn So that first server phenomena such as crash will not occur because obtaining excessive task to be allocated.Any first server is come Say, maximum task quantity is related with the resource of first server, can be specifically arranged according to practical application, the present embodiment not into Row limits.And any first server can actively obtain to be allocated itself can be performed from task list to be allocated Business, and the task to be allocated that first server can be performed can relevant information and the idling-resource of itself based on task to be allocated It determines, that is to say, that the executable task to be allocated of first server is to fully consider that the idling-resource of first server obtains The task to be allocated being executed, in this way for task to be allocated column in every task to be allocated for, this is to be allocated Task can distribute to the first processor that the task to be allocated can be performed, so that the resource of server cluster obtains to the greatest extent It utilizes.
Exemplary embodiments of the present disclosure are described in more detail below with reference to accompanying drawings.Although showing the disclosure in attached drawing Exemplary embodiment, it being understood, however, that may be realized in various forms the disclosure without should be by embodiments set forth here It is limited.On the contrary, these embodiments are provided to facilitate a more thoroughly understanding of the present invention, and can be by the scope of the present disclosure It is fully disclosed to those skilled in the art.
Referring to Fig. 2, the flow chart of the task acquisition methods provided it illustrates the exemplary embodiment of the disclosure, is used for Its executable task to be allocated is actively obtained from second server by the first server in server cluster, may include Following steps:
201: a task to be allocated in the task list to be allocated of locking second server storage, and obtain and locked Task to be allocated relevant information.
In the present embodiment, the purpose for locking task to be allocated is that one first in server cluster takes in order to prevent During business device determines the task to be allocated itself whether can be performed, other first servers in server cluster are from wait divide With extracting the task to be allocated in task list, it can thus forbid at least two first servers in server cluster It is common to obtain same task to be allocated.A kind of feasible pattern for wherein locking task to be allocated is: by the shape of task to be allocated State is identified as lock state, and the lock state is for indicating the task to be allocated by a first service in server cluster Device locking, other first servers wouldn't obtain the task to be allocated.
And the relevant information of task to be allocated is user's addition when creating the task to be allocated, to pass through task to be allocated Relevant information instruction task function, the corresponding data amount information of the task to be allocated and task grade, estimate execute the time and Committed memory etc..Wherein task function is used to identify the function that task to be allocated is realized;The corresponding data of the task to be allocated Amount information is used to indicate the data volume that the task to be allocated carries;Task grade is used to indicate the rank of task to be allocated, task The rank of higher grade explanation task to be allocated is higher, then the task to be allocated needs to be allocated lower than this prior to task grade The task to be allocated of task is obtained by first server, for the representation of task grade can by forms such as number, letters, This present embodiment is not limited.
In the present embodiment, first server can periodical poll task list to be allocated, to lock to be allocated A task to be allocated being engaged in list, the feasible pattern for locking task to be allocated are as follows:
A method of lock task to be allocated: it is specified to be allocated for its that first server can lock second server Task, i.e. second server can execute the Resources list based on the historic task of each first server in server cluster, Task to be allocated is executed for first server, what wherein the historic task of first server executed the Resources list record is the first clothes Business device has executed the resource that task uses it is possible thereby to which the historic task based on each first server executes the Resources list and has been Task to be allocated specifies an optimal first server, and so-called optimal first server is the case where executing task to be allocated The case where executing the task to be allocated better than other first servers, such as optimal first server execute task to be allocated when Between be less than other first servers and execute time of the task to be allocated.
Another kind locks the mode of task to be allocated: the task dispatching of all tasks to be allocated in task list to be allocated In the identical situation of grade, a task to be allocated is locked at random from task list to be allocated.
In the case that the task grade of the task to be allocated of preset quantity is different in task list to be allocated, to be allocated The highest task to be allocated of task grade is locked in task list, that is to say, that have in task list to be allocated to be allocated In the case that the task grade of task and the task grade of other tasks to be allocated are different, then need from task list to be allocated The highest task to be allocated of locking task grade.In practical applications, second server user is created it is to be allocated Task is stored can be stored in task list to be allocated according to task dispatching grade, such as the side according to task grade from high to low Formula stores each item task to be allocated, so that the high task ranking to be allocated of task grade is in low to be allocated of task grade Before business, such first server can lock task to be allocated according to vertical mode is sorted, and be appointed with preferential locking The high task to be allocated of grade of being engaged in, saves the process of all tasks to be allocated in first server poll task list to be allocated.
202: whether the idling-resource of relevant information and first server based on task to be allocated determines first server The executable task to be allocated locked.That is, first server is needed before obtaining task to be allocated based on to be allocated The relevant information of task and the idling-resource of itself are analysed and compared, to determine it is to be allocated whether the idling-resource of itself meets Resource needed for the execution of task is realized by considering what the idling-resource of first server can be performed to obtain first server Task to be allocated obtains task to be allocated rationally.
In the present embodiment, a kind of feasible pattern of the whether executable task to be allocated locked of first server is determined Be: the relevant information based on task to be allocated estimates the resource of the required by task to be allocated locked;It is to be allocated what is locked Under the resource of required by task and the matched situation of the idling-resource of first server, determines that first server is executable and locked Task to be allocated;In the unmatched situation of idling-resource of the resource and first server of the required by task to be allocated locked Under, determine the not executable task to be allocated locked of first server.
Relevant information wherein based on task to be allocated estimates the feasible side of the resource of the required by task to be allocated locked Formula can be but be not limited to following manner:
A kind of feasible pattern is: the relevant information based on task to be allocated is executed in the Resources list from historic task and is obtained Record is executed to the historic task with the matched task of task (referred to as matching task) to be allocated, as matching task is and this Each information in the identical or relevant information with the task to be allocated of each information in the relevant information of task to be allocated Meet the task to be allocated of preset condition, wherein preset condition can no longer be explained depending on practical application in this present embodiment It states.
And resource needed for record has execution matching task in historic task execution record, so as to be based on historic task Resource needed for executing the execution matching task recorded in record, estimates the resource of the required by task to be allocated locked, such as may be used To include but is not limited to: resource weighting scheme needed for executing the execution matching task recorded in record to historic task is made even Mean value mode obtains the resource of the required by task to be allocated locked.
Another feasible pattern is: the relevant information based on task to be allocated and the Resource Calculation method being previously obtained obtain To the resource of required by task to be allocated, such as the relevant information of task to be allocated is written in Resource Calculation method, calculate out to Distribute the resource of required by task.
Corresponding, the resource of required by task to be allocated locked is matched with the idling-resource of first server can be with Be: the resource of the required by task to be allocated locked is less than the idling-resource of first server or the sky of first server Not busy resource is a scope of resource, and the resource of the required by task to be allocated locked refers in the idling-resource of the first server Illustrate that the resource of required by task to be allocated locked is matched with the idling-resource of first server when in fixed scope of resource.
203: in the case where determining that the task to be allocated locked can be performed in first server, actively acquisition is locked Task to be allocated.First server is to be allocated by what is locked in the case where actively obtaining the task to be allocated locked The state change of task is to have obtained state, to indicate other first servers task to be allocated by some first server It obtains and executes, in this way other first servers no longer poll task to be allocated.
204: in the case where determining the not executable task to be allocated locked of first server, releasing to being locked The locking of task to be allocated.
A kind of feasible pattern for wherein releasing the locking to the task to be allocated locked is: to be allocated will locked The state change of business is unlocked state, other first servers in this way can lock the task to be allocated, to determine itself The task to be allocated whether can be performed, and lock the task to be allocated before but the first server of the task to be allocated has not been obtained Continue to lock other tasks to be allocated.
From above-mentioned technical proposal it is found that first server in server cluster in active from the to be allocated of second server Before obtaining a task to be allocated in task list, a task to be allocated in task list to be allocated is locked first, and obtain The relevant information for taking the task to be allocated locked, is then based on the relevant information of task to be allocated and the free time of first server Resource determines the whether executable task to be allocated locked of first server, is locked determining that first server is executable Task to be allocated in the case where, the task to be allocated locked is actively obtained, in this way for the first clothes in server cluster It is engaged in for device and second server, first server and second server, can be by first servers without disposing Jobserver Task to be allocated is actively obtained from second server.And task to be allocated acquired in first server is first server Executable task to be allocated, the executable task to be allocated of the first server be relevant information based on task to be allocated with What the idling-resource of first server was determined, therefore first server obtains it by considering the idling-resource of itself and can hold Capable task to be allocated, obtains task to be allocated rationally, to utmostly utilize entire server cluster Resource.
Herein it should be noted is that: second server in server cluster can be real to each first server It applies above-mentioned task acquisition methods to be monitored, obtains monitoring record, wherein monitoring record includes but is not limited to: each first service (the executable task to be allocated locked can not be held result of the device to any above-mentioned task acquisition methods of task-cycle to be allocated The task to be allocated that is locked of row) and each first server execute the required by task resource to be allocated, if second server pair The conclusion of some task to be allocated in task list to be allocated is: all first servers in server cluster can not be held The task to be allocated that row is locked, then second server needs to generate a task acquisition instruction, carries in this task acquisition instruction There is task identification information, the task identification information not can be performed by all first servers in server cluster and lock Task to be allocated identification information, and the task acquisition instruction is sent to optimal place in server cluster by second server Manage the first server of the corresponding task to be allocated of the task identification information.
Wherein the first server of the corresponding task to be allocated of the optimal processing task identification information is in server cluster: The required by task resource to be allocated is executed in server cluster to estimate with for the corresponding task to be allocated of the task identification information The immediate first server of resource, after which receives task acquisition request, actively obtain the task identification The corresponding task to be allocated of information.
Certainly, first server can also periodical poll second server record, determining itself to belong to service The first server of the corresponding task to be allocated of the optimal processing task identification information, actively obtains the task identification in device cluster The corresponding task to be allocated of information, to realize that the active to any task to be allocated obtains.
Corresponding with above method embodiment, the disclosure also provides a kind of task acquisition device, which can Second server with the first server being applied in server cluster, and in first server and the server cluster is logical Letter, the structure of task acquisition device is as shown in figure 3, may include: lock cell 11, determination unit 12 and obtain in the present embodiment Take unit 13.
Lock cell 11, the task to be allocated in task list to be allocated for locking second server storage, And obtain the relevant information of the task to be allocated locked.In the present embodiment, the purpose for locking task to be allocated is in order to anti- During only a first server in server cluster determines whether itself can be performed the task to be allocated, server Other first servers in cluster are extracted from task list to be allocated walks the task to be allocated, can thus forbid servicing At least two first servers in device cluster obtain same task to be allocated jointly.
Wherein lock cell 11 can periodical poll task list to be allocated, to lock in task list to be allocated One task to be allocated, the feasible pattern for locking task to be allocated may is that be needed point in task list to be allocated In the identical situation of task grade with task, a task to be allocated is locked at random from task list to be allocated;Wait divide In the case that task grade with the task to be allocated of preset quantity in task list is different, locked from task list to be allocated The highest task to be allocated of task grade;Or locking second server is the task to be allocated that first server is specified, Detailed process please refers to the related description in embodiment of the method.
And the relevant information of task to be allocated is user's addition when creating the task to be allocated, to pass through task to be allocated Relevant information instruction task function, the corresponding data amount information of the task to be allocated and task grade, estimate execute the time and Committed memory etc..Wherein task function is used to identify the function that task to be allocated is realized;The corresponding data of the task to be allocated Amount information is used to indicate the data volume that the task to be allocated carries;Task grade is used to indicate the rank of task to be allocated, task The rank of higher grade explanation task to be allocated is higher, then the task to be allocated needs to be allocated lower than this prior to task grade The task to be allocated of task is obtained by first server, for the representation of task grade can by forms such as number, letters, This present embodiment is not limited.
Determination unit 12 determines for the idling-resource of relevant information and first server based on task to be allocated The whether executable task to be allocated locked of one server.That is, being needed before obtaining task to be allocated based on wait divide Relevant information and the idling-resource of itself with task are analysed and compared, to determine whether the idling-resource of itself meets wait divide Resource needed for execution with task is realized by considering that the idling-resource of first server can be performed to obtain first server Task to be allocated, task to be allocated is rationally obtained.
In the present embodiment, determination unit 12 may include estimation subelement and determining subelement.Wherein estimate subelement, For the relevant information based on task to be allocated, the resource of the required by task to be allocated locked is estimated.Such as estimation subelement Can based on the relevant information of task to be allocated, executed from historic task got in the Resources list it is matched with task to be allocated The historic task of task executes record, and based on resource needed for the execution matching task recorded in historic task execution record, estimates The resource for calculating the required by task to be allocated locked is related letter with task to be allocated to the matched task of task to be allocated Each information in the identical or relevant information with task to be allocated of each information in breath meets the task of preset condition.
Or
Estimation subelement can relevant information based on task to be allocated and the Resource Calculation device that is previously obtained, obtain to Distribute the resource of required by task.
Method is please referred to for the detailed process for the resource that estimation subelement estimates the required by task to be allocated locked Related description in embodiment no longer illustrates this present embodiment.
Subelement is determined, in the resource of the required by task to be allocated locked and the idling-resource of first server In the case where matching, the executable task to be allocated locked of first server is determined, and in be allocated locked In the unmatched situation of idling-resource of resource and first server needed for business, determines that first server is not executable and locked Task to be allocated.
Acquiring unit 13, in the case where determining the executable task to be allocated locked of first server, actively Obtain the task to be allocated locked.In the case where acquiring unit 13 actively obtains the task to be allocated locked, can incite somebody to action The state change of the task to be allocated locked is to have obtained state, with indicate other first servers tasks to be allocated by Some first server, which obtains, to be executed, in this way other first servers no longer poll task to be allocated.
It should be noted is that, task acquisition device provided in this embodiment can also include: unlocking unit herein 14, as shown in Figure 4.Unlocking unit 14, for the case where determining the first server not executable task to be allocated locked Under, release the locking to the task to be allocated locked.The one kind for wherein releasing the locking to the task to be allocated locked can Line mode is: being unlocked state, in this way other first servers by the state change of the task to be allocated locked The task to be allocated is locked, whether the task to be allocated itself can be performed with determination, and locks the task to be allocated but not before The first server for obtaining the task to be allocated continues to lock other tasks to be allocated.
From above-mentioned technical proposal it is found that active obtained from the task list to be allocated of second server one it is to be allocated Before task, a task to be allocated in task list to be allocated is locked first, and obtain the phase of the task to be allocated locked Information is closed, the relevant information of task to be allocated and the idling-resource of first server is then based on, whether determines first server The executable task to be allocated locked, it is main in the case where determining that the task to be allocated locked can be performed in first server It is dynamic to obtain the task to be allocated locked, in this way in server cluster first server and second server for, the One server and second server can actively be obtained from second server without disposing Jobserver by first server Task to be allocated.And task to be allocated acquired in first server is the executable task to be allocated of first server, should The executable task to be allocated of first server is the idling-resource of relevant information and first server based on task to be allocated It determines, therefore first server obtains its executable task to be allocated by considering the idling-resource of itself, so that Task to be allocated can be obtained rationally, to utmostly utilize the resource of entire server cluster.
Herein it should be noted is that: second server in server cluster can to each first server into Row monitoring, obtains monitoring record, wherein monitoring record includes but is not limited to: each first server is real to any task to be allocated Apply result (the executable task to be allocated locked or not executable to be allocated locked of above-mentioned task acquisition methods Business) and each first server execute the resource of the required by task to be allocated, if second server is in task list to be allocated The conclusion of some task to be allocated be: all first servers in server cluster it is not executable locked it is to be allocated Task, then second server needs to generate a task acquisition instruction, and the task acquisition instruction is by the reception in task acquisition device Unit obtains, and carries task identification information in the task acquisition instruction, and trigger acquiring unit and actively obtain the task mark Know the corresponding task to be allocated of information, wherein task identification information is that all first servers in server cluster can not be held The identification information for the task to be allocated that row is locked, and the task acquisition instruction is sent to server cluster by second server Connecing in the corresponding task acquisition device of first server of the corresponding task to be allocated of the middle optimal processing task identification information Receive unit.
Wherein the first server of the corresponding task to be allocated of the optimal processing task identification information is in server cluster: The required by task resource to be allocated is executed in server cluster to estimate with for the corresponding task to be allocated of the task identification information The immediate first server of resource.
The task acquisition device includes processor and memory, and above-mentioned lock cell 11, determination unit 12 and acquisition are single Member 13 it is equal as program unit storage in memory, by processor execute above procedure unit stored in memory Lai Realize corresponding function.
Include kernel in processor, is gone in memory to transfer corresponding program unit by kernel.Kernel can be set one Or more, come to obtain its executable task to be allocated from second server actively by adjusting kernel parameter.
Memory may include the non-volatile memory in computer-readable medium, random access memory (RAM) and/ Or the forms such as Nonvolatile memory, if read-only memory (ROM) or flash memory (flash RAM), memory include that at least one is deposited Store up chip.
The embodiment of the invention provides a kind of storage mediums, are stored thereon with program, real when which is executed by processor The existing task acquisition methods.
The embodiment of the invention provides a kind of processor, the processor is for running program, wherein described program operation Task acquisition methods described in Shi Zhihang.
The embodiment of the invention provides a kind of equipment, equipment include processor, memory and storage on a memory and can The program run on a processor, processor perform the steps of when executing program
Lock second server storage task list to be allocated in a task to be allocated, and obtain locked to The relevant information of distribution task, wherein second server and first server are located in server cluster, and first server with Second server communication;
The idling-resource of relevant information and first server based on the task to be allocated, determines the first server Whether the task to be allocated locked can be performed;
In the case where determining that the task to be allocated locked can be performed in the first server, actively acquisition is locked Task to be allocated.
Preferably, the idling-resource of the relevant information and first server based on the task to be allocated, determines institute Stating the whether executable task to be allocated locked of first server includes: the relevant information based on the task to be allocated, is estimated Calculate the resource of the required by task to be allocated locked;
Under the resource of the required by task to be allocated locked and the matched situation of idling-resource of the first server, Determine the executable task to be allocated locked of the first server;
In the resource of the required by task to be allocated locked and the unmatched situation of idling-resource of the first server Under, determine the not executable task to be allocated locked of the first server;
Processor also performed the steps of when executing program determine the first server it is not executable locked to In the case where distribution task, the locking to the task to be allocated locked is released.
Preferably, the relevant information based on the task to be allocated estimates the required by task to be allocated locked Resource includes: the relevant information based on the task to be allocated, executed from historic task got in the Resources list with it is described to The historic task of the matched task of distribution task executes record;
Execute resource needed for the execution matching task that records in record based on historic task, estimate locked it is to be allocated The resource of required by task, it is described with the matched task of task to be allocated be in the relevant information of the task to be allocated Each information in the identical or relevant information with the task to be allocated of each information meets the task of preset condition;
Or
The relevant information based on the task to be allocated estimates the resource packet of the required by task to be allocated locked Include: the relevant information based on task to be allocated and the Resource Calculation method being previously obtained obtain the resource of required by task to be allocated.
Preferably, a task packet to be allocated in the task list to be allocated of the locking second server storage It includes: in the identical situation of task grade of all tasks to be allocated in the task list to be allocated, from described to be allocated A task to be allocated is locked in task list at random;
In the case that the task grade of the task to be allocated of preset quantity is different in the task list to be allocated, from institute State the locking highest task to be allocated of task grade in task list to be allocated;
Or
A task to be allocated in the task list to be allocated of the locking second server storage includes: locking The second server is the task to be allocated that the first server is specified.
Preferably, the task that the reception second server is sent also is performed the steps of when processor executes program to obtain Instruction fetch, wherein carrying task identification information in the task acquisition instruction, and the task acquisition instruction is used in determination All first servers generate in the case where the corresponding task to be allocated of the task identification information not can be performed;
Actively obtain the corresponding task to be allocated of the task identification information.
Equipment herein can be server, PC, PAD, mobile phone etc..
Present invention also provides a kind of computer program products, when executing on data processing equipment, are adapted for carrying out just The program of beginningization there are as below methods step: one to be allocated in the task list to be allocated of locking second server storage Business, and the relevant information of the task to be allocated locked is obtained, wherein second server and first server are located at server set In group, and first server is communicated with second server;
The idling-resource of relevant information and first server based on the task to be allocated, determines the first server Whether the task to be allocated locked can be performed;
In the case where determining that the task to be allocated locked can be performed in the first server, actively acquisition is locked Task to be allocated.
Preferably, the idling-resource of the relevant information and first server based on the task to be allocated, determines institute Stating the whether executable task to be allocated locked of first server includes: the relevant information based on the task to be allocated, is estimated Calculate the resource of the required by task to be allocated locked;
Under the resource of the required by task to be allocated locked and the matched situation of idling-resource of the first server, Determine the executable task to be allocated locked of the first server;
In the resource of the required by task to be allocated locked and the unmatched situation of idling-resource of the first server Under, determine the not executable task to be allocated locked of the first server;
When executing on data processing equipment, it is further adapted for executing the program of initialization there are as below methods step: in determination In the case where the not executable task to be allocated locked of the first server, the lock to the task to be allocated locked is released It is fixed.
Preferably, the relevant information based on the task to be allocated estimates the required by task to be allocated locked Resource includes: the relevant information based on the task to be allocated, executed from historic task got in the Resources list with it is described to The historic task of the matched task of distribution task executes record;
Execute resource needed for the execution matching task that records in record based on historic task, estimate locked it is to be allocated The resource of required by task, it is described with the matched task of task to be allocated be in the relevant information of the task to be allocated Each information in the identical or relevant information with the task to be allocated of each information meets the task of preset condition;
Or
The relevant information based on the task to be allocated estimates the resource packet of the required by task to be allocated locked Include: the relevant information based on task to be allocated and the Resource Calculation method being previously obtained obtain the resource of required by task to be allocated.
Preferably, a task packet to be allocated in the task list to be allocated of the locking second server storage It includes: in the identical situation of task grade of all tasks to be allocated in the task list to be allocated, from described to be allocated A task to be allocated is locked in task list at random;
In the case that the task grade of the task to be allocated of preset quantity is different in the task list to be allocated, from institute State the locking highest task to be allocated of task grade in task list to be allocated;
Or
A task to be allocated in the task list to be allocated of the locking second server storage includes: locking The second server is the task to be allocated that the first server is specified.
Preferably, when executing on data processing equipment, it is further adapted for executing the program of initialization there are as below methods step: The task acquisition instruction that the second server is sent is received, wherein carrying task identification letter in the task acquisition instruction Breath, and the task acquisition instruction be used for determine all first servers the task identification information not can be performed it is corresponding It is generated in the case where task to be allocated;
Actively obtain the corresponding task to be allocated of the task identification information.
It should be understood by those skilled in the art that, embodiments herein can provide as method, system or computer program Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the application Apply the form of example.Moreover, it wherein includes the computer of computer usable program code that the application, which can be used in one or more, The computer program implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) produces The form of product.
The application is referring to method, the process of equipment (system) and computer program product according to the embodiment of the present application Figure and/or block diagram describe.It should be understood that every one stream in flowchart and/or the block diagram can be realized by computer program instructions The combination of process and/or box in journey and/or box and flowchart and/or the block diagram.It can provide these computer programs Instruct the processor of general purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce A raw machine, so that being generated by the instruction that computer or the processor of other programmable data processing devices execute for real The device for the function of being specified in present one or more flows of the flowchart and/or one or more blocks of the block diagram.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing devices with spy Determine in the computer-readable memory that mode works, so that it includes referring to that instruction stored in the computer readable memory, which generates, Enable the manufacture of device, the command device realize in one box of one or more flows of the flowchart and/or block diagram or The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device, so that counting Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, thus in computer or The instruction executed on other programmable devices is provided for realizing in one or more flows of the flowchart and/or block diagram one The step of function of being specified in a box or multiple boxes.
In a typical configuration, calculating equipment includes one or more processors (CPU), input/output interface, net Network interface and memory.
Memory may include the non-volatile memory in computer-readable medium, random access memory (RAM) and/ Or the forms such as Nonvolatile memory, such as read-only memory (ROM) or flash memory (flash RAM).Memory is computer-readable Jie The example of matter.
Computer-readable medium includes permanent and non-permanent, removable and non-removable media can be by any method Or technology come realize information store.Information can be computer readable instructions, data structure, the module of program or other data. The example of the storage medium of computer includes, but are not limited to phase change memory (PRAM), static random access memory (SRAM), moves State random access memory (DRAM), other kinds of random access memory (RAM), read-only memory (ROM), electric erasable Programmable read only memory (EEPROM), flash memory or other memory techniques, read-only disc read only memory (CD-ROM) (CD-ROM), Digital versatile disc (DVD) or other optical storage, magnetic cassettes, tape magnetic disk storage or other magnetic storage devices Or any other non-transmission medium, can be used for storage can be accessed by a computing device information.As defined in this article, it calculates Machine readable medium does not include temporary computer readable media (transitory media), such as the data-signal and carrier wave of modulation.
It should also be noted that, the terms "include", "comprise" or its any other variant are intended to nonexcludability It include so that the process, method, commodity or the equipment that include a series of elements not only include those elements, but also to wrap Include other elements that are not explicitly listed, or further include for this process, method, commodity or equipment intrinsic want Element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that including element There is also other identical elements in process, method, commodity or equipment.
It will be understood by those skilled in the art that embodiments herein can provide as method, system or computer program product. Therefore, complete hardware embodiment, complete software embodiment or embodiment combining software and hardware aspects can be used in the application Form.It is deposited moreover, the application can be used to can be used in the computer that one or more wherein includes computer usable program code The shape for the computer program product implemented on storage media (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) Formula.
The above is only embodiments herein, are not intended to limit this application.To those skilled in the art, Various changes and changes are possible in this application.It is all within the spirit and principles of the present application made by any modification, equivalent replacement, Improve etc., it should be included within the scope of the claims of this application.

Claims (10)

1. a kind of task acquisition methods, which is characterized in that applied to the first server in server cluster, the first service Device is communicated with the second server in the server cluster, which comprises
Lock a task to be allocated in the task list to be allocated of second server storage, and obtain locked to The relevant information of distribution task;
Whether the idling-resource of relevant information and first server based on the task to be allocated, determine the first server The executable task to be allocated locked;
In the case where determining the executable task to be allocated locked of the first server, actively obtain locked to point With task.
2. the method according to claim 1, wherein the relevant information based on the task to be allocated and the The idling-resource of one server determines that the whether executable task to be allocated locked of the first server includes: based on institute The relevant information of task to be allocated is stated, estimates the resource of the required by task to be allocated locked;
Under the resource of the required by task to be allocated locked and the matched situation of idling-resource of the first server, determine The executable task to be allocated locked of the first server;
Under the resource of the required by task to be allocated locked and the unmatched situation of idling-resource of the first server, really The not executable task to be allocated locked of the fixed first server;
The method also includes: in the case where determining the first server not executable task to be allocated locked, solution Except the locking to the task to be allocated locked.
3. according to the method described in claim 2, it is characterized in that, the relevant information based on the task to be allocated, estimates The resource for calculating the required by task to be allocated locked includes: the relevant information based on the task to be allocated, is held from historic task It is got in row the Resources list and executes record with the historic task of the matched task of task to be allocated;
Resource needed for executing the execution matching task recorded in record based on historic task, estimates the task to be allocated locked Required resource, it is described with the matched task of task to be allocated be with it is each in the relevant information of the task to be allocated Each information in the identical or relevant information with the task to be allocated of information meets the task of preset condition;
Or
The relevant information based on the task to be allocated estimates that the resource of the required by task to be allocated locked includes: base Relevant information in task to be allocated and the Resource Calculation method being previously obtained, obtain the resource of required by task to be allocated.
4. the method according to claim 1, wherein to be allocated of the locking second server storage A task to be allocated in business list includes: the task grade of all tasks to be allocated in the task list to be allocated In identical situation, a task to be allocated is locked at random from the task list to be allocated;
In the case that the task grade of the task to be allocated of preset quantity is different in the task list to be allocated, from it is described to It distributes and locks the highest task to be allocated of task grade in task list;
Or
A task to be allocated in the task list to be allocated of the locking second server storage includes: described in locking Second server is the task to be allocated that the first server is specified.
5. the method according to claim 1, wherein the method also includes: receive second server hair The task acquisition instruction sent, wherein carrying task identification information in the task acquisition instruction, and the task acquisition instruction For raw in the case where determining all first servers and not can be performed the corresponding task to be allocated of the task identification information At;
Actively obtain the corresponding task to be allocated of the task identification information.
6. a kind of task acquisition device, which is characterized in that applied to the first server in server cluster, the first service Device is communicated with the second server in the server cluster, and described device includes:
Lock cell, the task to be allocated in task list to be allocated for locking the second server storage, and Obtain the relevant information of the task to be allocated locked;
Determination unit, for the idling-resource of relevant information and first server based on the task to be allocated, determine described in The whether executable task to be allocated locked of first server;
Acquiring unit, for actively obtaining in the case where determining that the task to be allocated locked can be performed in the first server Take the task to be allocated locked.
7. device according to claim 6, which is characterized in that the determination unit includes:
It estimates subelement, for the relevant information based on the task to be allocated, estimates the required by task to be allocated locked Resource;
Determine subelement, the idling-resource for resource and the first server in the required by task to be allocated locked In the case where matching, the executable task to be allocated locked of the first server is determined, and for being locked wait divide Resource with required by task determines the first server not in the unmatched situation of idling-resource of the first server The executable task to be allocated locked;
Described device further include: unlocking unit, for determining not executable to be allocated locked of the first server In the case where business, the locking to the task to be allocated locked is released.
8. device according to claim 7, which is characterized in that the estimation subelement is specifically used for based on described wait divide Relevant information with task is executed from historic task to get in the Resources list and be gone through with the matched task of task to be allocated History experience table;
Resource needed for executing the execution matching task recorded in record based on historic task, estimates the task to be allocated locked Required resource, it is described with the matched task of task to be allocated be with it is each in the relevant information of the task to be allocated Each information in the identical or relevant information with the task to be allocated of information meets the task of preset condition;
Or
The estimation subelement, specifically for based on task to be allocated relevant information and the Resource Calculation device that is previously obtained, Obtain the resource of required by task to be allocated.
9. a kind of storage medium, which is characterized in that the storage medium includes the program of storage, wherein described program right of execution Benefit require any one of 1 to 5 described in task acquisition methods.
10. a kind of processor, which is characterized in that the processor is for running program, wherein right of execution when described program is run Benefit require any one of 1 to 5 described in task acquisition methods.
CN201810034865.8A 2018-01-15 2018-01-15 Task obtaining method and device Active CN110046034B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810034865.8A CN110046034B (en) 2018-01-15 2018-01-15 Task obtaining method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810034865.8A CN110046034B (en) 2018-01-15 2018-01-15 Task obtaining method and device

Publications (2)

Publication Number Publication Date
CN110046034A true CN110046034A (en) 2019-07-23
CN110046034B CN110046034B (en) 2021-04-23

Family

ID=67272724

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810034865.8A Active CN110046034B (en) 2018-01-15 2018-01-15 Task obtaining method and device

Country Status (1)

Country Link
CN (1) CN110046034B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543352A (en) * 2019-08-16 2019-12-06 浙江大华技术股份有限公司 task allocation method of scheduling system and related device thereof
CN113378498A (en) * 2021-08-12 2021-09-10 新华三半导体技术有限公司 Task allocation method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101261591A (en) * 2008-04-28 2008-09-10 艾诺通信系统(苏州)有限责任公司 Multi- nuclear DSP system self-adapting task scheduling method
US20090119666A1 (en) * 2002-02-25 2009-05-07 International Business Machines Corporation Apparatus for cooperative distributed task management in a storage subsystem with multiple controllers using cache locking
CN102902587A (en) * 2011-07-28 2013-01-30 中国移动通信集团四川有限公司 Distribution type task scheduling method, distribution type task scheduling system and distribution type task scheduling device
CN105700948A (en) * 2014-11-24 2016-06-22 阿里巴巴集团控股有限公司 Method and device for scheduling calculation task in cluster
CN106598735A (en) * 2016-12-13 2017-04-26 广东金赋科技股份有限公司 Distributive calculation method, main control node, calculation node and system
CN107045456A (en) * 2016-02-05 2017-08-15 华为技术有限公司 A kind of resource allocation methods and explorer

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119666A1 (en) * 2002-02-25 2009-05-07 International Business Machines Corporation Apparatus for cooperative distributed task management in a storage subsystem with multiple controllers using cache locking
CN101261591A (en) * 2008-04-28 2008-09-10 艾诺通信系统(苏州)有限责任公司 Multi- nuclear DSP system self-adapting task scheduling method
CN102902587A (en) * 2011-07-28 2013-01-30 中国移动通信集团四川有限公司 Distribution type task scheduling method, distribution type task scheduling system and distribution type task scheduling device
CN105700948A (en) * 2014-11-24 2016-06-22 阿里巴巴集团控股有限公司 Method and device for scheduling calculation task in cluster
CN107045456A (en) * 2016-02-05 2017-08-15 华为技术有限公司 A kind of resource allocation methods and explorer
CN106598735A (en) * 2016-12-13 2017-04-26 广东金赋科技股份有限公司 Distributive calculation method, main control node, calculation node and system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543352A (en) * 2019-08-16 2019-12-06 浙江大华技术股份有限公司 task allocation method of scheduling system and related device thereof
CN110543352B (en) * 2019-08-16 2022-06-07 浙江大华技术股份有限公司 Task allocation method of scheduling system and related device thereof
CN113378498A (en) * 2021-08-12 2021-09-10 新华三半导体技术有限公司 Task allocation method and device

Also Published As

Publication number Publication date
CN110046034B (en) 2021-04-23

Similar Documents

Publication Publication Date Title
CN109684065B (en) Resource scheduling method, device and system
US10108458B2 (en) System and method for scheduling jobs in distributed datacenters
US10318874B1 (en) Selecting forecasting models for time series using state space representations
CN109144699A (en) Distributed task dispatching method, apparatus and system
US8869148B2 (en) Concurrency identification for processing of multistage workflows
US10002075B1 (en) Managing memory resources in a network environment in order to handle querying of logical data structures
CN106569892B (en) Resource scheduling method and equipment
CN114884962B (en) Load balancing method and device and electronic equipment
CN104252386B (en) The locking method and equipment of data renewal
CN110046034A (en) Task acquisition methods and device
CN105874426A (en) Batch processing method and device for system invocation commands
CN111324545B (en) Application server middleware performance test method, test terminal and application server
CN108874375A (en) A kind of implementation method and device of timer
CN110069488A (en) A kind of date storage method, method for reading data and its device
CN106571935B (en) Resource scheduling method and equipment
CN109558249B (en) Control method and device for concurrent operation
CN107239328A (en) Method for allocating tasks and device
CN115994029A (en) Container resource scheduling method and device
CN111475277A (en) Resource allocation method, system, equipment and machine readable storage medium
CN109684381A (en) Data hot statistics method and device
CN109582396A (en) A kind of task status processing method, device, system and storage medium
CN109614386B (en) Data processing method, device, server and computer readable storage medium
CN114138444A (en) Task scheduling method, device, equipment, storage medium and program product
CN114356516A (en) Resource scheduling method, related device, equipment and storage medium
CN113553264A (en) Test data generation method, test data generation device, electronic device and medium

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100080 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant