CN103019651B - The method for parallel processing of complex task and device - Google Patents
The method for parallel processing of complex task and device Download PDFInfo
- Publication number
- CN103019651B CN103019651B CN201210274076.4A CN201210274076A CN103019651B CN 103019651 B CN103019651 B CN 103019651B CN 201210274076 A CN201210274076 A CN 201210274076A CN 103019651 B CN103019651 B CN 103019651B
- Authority
- CN
- China
- Prior art keywords
- subtask
- client
- result
- subtasks
- successfully processed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
The invention discloses the method for parallel processing of a kind of complex task and device.Described method includes: the client received request is decomposed into multiple subtask without dependence by requesting processing, and each subtask is all sent to an independent working cell processes;Requesting processing receive each working cell return be successfully processed result or failure handling result;When receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client by requesting processing;And when having at least one subtask not return within a predetermined period of time to be successfully processed result, requesting processing interrupts the process of all subtasks being not fully complete, and needs the subtask carrying out rolling back action to carry out rolling back action to completed.The present invention can be effectively improved the response speed of single request, reduces response time, improves the resource utilization of server side.
Description
Technical field
The present invention relates to field of computer technology, particularly to method for parallel processing and the device of a kind of complex task.
Background technology
In existing software system, the use of client (Client)/server (Server) pattern is very extensive.In this mode, being typically all and submitted to request by Client, then Client waits that Server returns result;After Server receives the request of Client, process accordingly according to this request, then result is returned to Client.Owing to a Server generally can connect multiple Client, therefore Server end is usually designed to multiple concurrent request that can simultaneously process, and all requests simultaneously arrived interference-free mutually can carry out parallel processing;And in a lot of crucial important application, client also has certain requirement for the response time of request.
Along with the increase of complexity of various practical applications, the improving constantly and the progressively extension of data type of required process of concurrent user's quantity, the design of Client/Server pattern also occurs in that a lot of evolution.At present, conventional Client/Server pattern has following several modes:
1, layered model: originally single Server end is divided into multiple intermediate layer, the definition of each layer function is clear and definite, such as interface layer, Business Logic, data service layer etc..Wherein, described layering can be layering logic layers or physical layering.
2, caching technology: the data buffer storage often accessed storage is got up in order to reusing in subsequent step.
3, distributed computing technology: process or calculating are distributed to multiple node and carry out, to improve extensibility.
4, asynchronous process pattern: request is excessively complicated, process time length and uncontrollable problem in order to solve, and namely Client returns after being designed to submission request, without waiting for result;Server end then will notify Client in some way after being disposed.
But, in the implementation of Client/Server pattern in the prior art, for the treatment mechanism of single request does not have too many implementation, it is all that single request is carried out serial process under normal circumstances, and use layered model to carry out load balancing, use caching technology to improve access speed.And if the method for synchronization cannot meet the process in limiting time, then will use complicated asynchronous process pattern.Therefore, when complicated request is processed, if Client/Server pattern adopts synchronous mode, then will result in and process problem slowly, cause that the Experience Degree of user is not good.And, if corresponding process can not be completed within the restriction time limit, then it is likely to result in the decline of request disposal ability.Although employing caching technology in existing complex task processing method to improve the efficiency of data access, but the effect for mission critical is also little.And, although by using distributed computing technology to carry out linear expansion system load to solve problem high concurrent, mass data, but above-mentioned distributed computing technology can reduce response speed on the contrary for single request.If additionally, adopt asynchronous process pattern in Client/Server pattern, then the complexity of whole system design can be greatly increased, thus being unfavorable for implementing and extending.
In summary, owing to the processing method of complex task of the prior art has shortcoming as above, therefore when complex task is processed, how to be effectively improved the response speed of single request, reduce response time and improve the resource utilization of server side, be the problem needing solution in this area badly.
Summary of the invention
According to the present invention, it is provided that the method for parallel processing of a kind of complex task and device, thus the response speed of single request can be effectively improved, reduce response time, improve the resource utilization of server side.
The method for parallel processing of a kind of complex task according to the present invention, comprising:
The client received request is decomposed into multiple subtask without dependence by A, requesting processing, and each subtask is all sent to an independent working cell processes;
B, requesting processing receive each working cell return be successfully processed result or failure handling result;
C, when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client by requesting processing;And when having at least one subtask not return within a predetermined period of time to be successfully processed result, requesting processing interrupts the process of all subtasks being not fully complete, and needs the subtask carrying out rolling back action to carry out rolling back action to completed.
Wherein, described step A includes:
Requesting processing obtains the parameter of required service from the client request received;
A globally unique serial number is generated for the request of described client;
Ask the service call related to according to described client, by predefined rule, the request of described client is decomposed into multiple subtask without dependence;
The parameter relevant to each subtask is bound among each subtask.
Wherein, described among each subtask bind the parameter relevant to each subtask include:
The parameter relevant with each subtask is bound with corresponding subtask, forms corresponding closure object;
Wherein, described closure object includes: the object of call method and call method desired parameters.
Wherein, the parameter that described and each subtask is relevant also can farther include:
The serial number of the client request belonging to subtask.
Wherein, described step B may further comprise:
When working cell is successfully processed result to requesting processing return, the subtask that it is handled is designated and completes by described working cell.
Wherein, described step B may further comprise:
When described completed subtask is qualitative change operation, working cell is the serial number of client request belonging to described completed subtask, performs to record this completed subtask in entry in default rollback;Wherein, described qualitative change operates the operation of the operation for change state or write data.
Wherein, pre-setting an initial value is the triggering variable of 0, then described step B may further comprise:
When requesting processing receives when being successfully processed result of a working cell return, the value of described triggering variable is increased by one by described requesting processing.
Wherein, described step C includes:
C1, when default timer expiry, perform step C5;Otherwise, step C2 is performed;Wherein, the timing length of described intervalometer is equal to the length of the predetermined amount of time pre-set;
C2, when the result received is for being successfully processed result, perform step C3;Otherwise, step C5 is performed;
C3, when all subtasks are all successfully processed, perform step C4;Otherwise, execution step B is returned;
C4, all of result is merged operation after be sent to corresponding client, process ends;
C5, interrupt the process of all subtasks being not fully complete, and all completed subtasks are carried out rolling back action.
Wherein, the method may further comprise:
When default timer expiry, requesting processing processes the information of time-out to client return.
Wherein, the method may further comprise:
When the result received is not be successfully processed result, requesting processing processes failed information to client return.
Wherein, it is judged that the method that all subtasks have all been successfully processed is:
Judge whether the value of described triggering variable is equal to the total number of all subtasks;If it is, all subtasks are all successfully processed;Otherwise, a subtask is had at least to be successfully processed not yet.
Wherein, described step C4 may further comprise:
Delete the rollback corresponding with the serial number of described client request and perform entry.
Wherein, the rollback that described deletion is corresponding with the serial number that described client is asked performs entry and includes:
Requesting processing can send to the garbage collection unit that pre-sets abandon instruction, described in abandon the serial number carrying client request in instruction;
Described garbage collection unit according to described in abandon instruction and delete corresponding with described serial number rollback execution entry.
Wherein, described all completed subtasks carried out rolling back action include:
The rollback corresponding with the serial number that described client is asked is performed all subtasks of storage in entry and carries out rolling back action.
Wherein, described the rollback corresponding with the serial number that described client is asked is performed all subtasks of storage in entry carry out rolling back action and include:
Requesting processing sends to the garbage collection unit pre-set and performs instruction, carries the serial number of client request in described execution instruction;
Described garbage collection unit performs all subtasks of storage in entry according to the rollback that described execution instruction pair is corresponding with described serial number and carries out rolling back action.
Wherein, the process of all subtasks being not fully complete of described interruption includes:
Interrupt instruction is sent to the working cell corresponding to all subtasks being not fully complete;
The process to the subtask being not fully complete is interrupted according to the interrupt instruction received in described working cell.
The embodiment of the present invention additionally provides the parallel processing apparatus of a kind of complex task, comprising: requesting processing, garbage collection unit and multiple working cell;
Described requesting processing, for the client received request is decomposed into multiple subtask without dependence, and is all sent to an independent working cell by each subtask;It is additionally operable to receive that each working cell returns is successfully processed result or failure handling result, and when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client;When being successfully processed result when there being at least one subtask not return within a predetermined period of time, send interrupt instruction to the working cell corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit;
Described working cell, for the subtask received is processed, and is successfully processed result or failure handling result to the return of described requesting processing;It is additionally operable to interrupt the process to the subtask being not fully complete according to the interrupt instruction received;
Described garbage collection unit, for carrying out rolling back action according to the execution instruction received to all completed subtasks.
Wherein, described working cell, it is additionally operable to, when being successfully processed result to requesting processing return, be designated the subtask that it is handled and complete.
Wherein, described working cell, it is additionally operable to when described completed subtask is qualitative change operation, working cell is the serial number of client request belonging to described completed subtask, performs to record this completed subtask in entry in default rollback.
Wherein, described requesting processing, it may also be used for when receiving when being successfully processed result of all subtasks within a predetermined period of time, to garbage collection unit send carry client request serial number abandon instruction;Be additionally operable to when have at least one subtask within a predetermined period of time return be successfully processed result time, to garbage collection unit send perform instruction;
Described garbage collection unit, is additionally operable to the instruction deletion rollback corresponding with serial number that abandon according to receiving and performs entry;It is additionally operable to all completed subtask of storage in the rollback execution entry that instruction pair is corresponding with serial number that performs according to receiving and carries out rolling back action.
Wherein, described requesting processing may further comprise: decomposing module and result treatment module;
Described decomposing module, for the client received request is decomposed into multiple subtask without dependence, and is all sent to an independent working cell by each subtask;
Described result treatment module, for receive each working cell return be successfully processed result or failure handling result;And for when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation being sent to corresponding client;When being successfully processed result when there being at least one subtask not return within a predetermined period of time, send interrupt instruction to the working cell corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit.
Wherein, described decomposing module may further comprise: reception submodule and decomposes submodule;
Described reception submodule, for obtaining the parameter of required service from the client request received, and is that the request of described client generates a globally unique serial number;Described client asked, the parameter of required service and serial number are sent to described decomposition submodule;
Described decomposition submodule, for asking the service call related to according to described client, is decomposed into multiple subtask without dependence the parameter that binding is relevant to each subtask among each subtask by predefined rule by the request of described client.
Wherein, the parallel processing apparatus of described complex task may further comprise: intervalometer;The timing length of described intervalometer is equal to the length of the predetermined amount of time pre-set;
Described intervalometer, for when described timer expiry, sending time-out information to described requesting processing;
Described requesting processing, for according to the time-out information received, sending interrupt instruction, and send execution instruction to garbage collection unit to the working cell corresponding to all subtasks being not fully complete.
Wherein, described requesting processing, it is additionally operable to, according to the time-out information received, process the information of time-out to client return.
Wherein, described requesting processing, it is additionally operable to when the result received is failure handling result, sends interrupt instruction to the working cell corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit.
Wherein, described requesting processing, it is additionally operable to when the result received is failure handling result, processes failed information to client return.
As seen from the above technical solution, in the method for parallel processing of the complex task provided in the present invention and device, owing to the client received request can be decomposed into multiple subtask without dependence, and each subtask is all sent to an independent working cell processes;And when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client;And when have at least one subtask within a predetermined period of time return be successfully processed result time, then interrupt the process of all subtasks being not fully complete, and all completed subtasks are carried out rolling back action, such that it is able to client request is carried out parallelization process, it is effectively improved the response speed of single request, reduce response time, substantially increase the Experience Degree of user, substantially increase the resource utilization of server side, perfect failure recovery mechanism, and improve the degree of accuracy of overtime control, reduce the complexity of design.
Accompanying drawing explanation
In order to be illustrated more clearly that the embodiment of the present invention or technical scheme of the prior art, the accompanying drawing used required in embodiment or description of the prior art will be briefly described below.It should be evident that the accompanying drawing in being described below is only some embodiments of the present invention, for those of ordinary skills, it is also possible to obtain other embodiment and accompanying drawing thereof according to these accompanying drawing illustrated embodiments.
Fig. 1 is the schematic flow sheet of the method for parallel processing of the complex task in the embodiment of the present invention;
Fig. 2 is the schematic flow sheet of a kind of specific implementation of step 101 in the embodiment of the present invention;
Fig. 3 is the schematic flow sheet of a kind of specific implementation of step 104 in the embodiment of the present invention;
Fig. 4 is the structural representation of the parallel processing apparatus of the complex task in the embodiment of the present invention.
Detailed description of the invention
For making the purpose of the present invention, technical scheme and advantage clearly understand, developing simultaneously embodiment referring to accompanying drawing, the present invention is described in more detail.
Fig. 1 is the schematic flow sheet of the method for parallel processing of the complex task in the embodiment of the present invention.
As it is shown in figure 1, the method for parallel processing of the complex task in the present embodiment includes step as described below:
Step 101, is decomposed into multiple subtask without dependence by the client received request.
When client needs a certain item service of request server, this client will send the client request corresponding with required service to server.Wherein, the request of described client can include the various parameters of required service.
Therefore, in the inventive solutions, one requesting processing (AcceptUnit) can be set in described server, for receiving the client request that client sends, and the client received request is decomposed into multiple subtask without dependence.Wherein, in a particular embodiment of the present invention, described refer to without dependence: the output of any one subtask after decomposition is not the input of other subtask, that is, input and the output of each subtask after decomposition are independent of each other, are all absent from obvious dependence between each subtask.
It follows that technical scheme is applicable to client request can be broken down into the situation of multiple subtask without dependence.
In a particular embodiment of the present invention, described the client received request is decomposed into multiple subtask without dependence multiple method can be used to realize.Hereinafter will realize method for one therein to be described in detail.
Fig. 2 is the schematic flow sheet of a kind of specific implementation of step 101 in the embodiment of the present invention.As in figure 2 it is shown, described step 101 can be realized by step as described below:
Step 201, obtains the parameter of required service from the client request received.
Including the various parameters of required service due to client in asking, therefore in this step, requesting processing directly can obtain the parameter of required service from the client request received.
Step 202, generates a globally unique serial number (ProcessSeq) for the request of described client.
Wherein, described serial number is used for identifying the request of each client.
Step 203, asks the service call related to according to described client, by predefined rule, the request of described client is decomposed into multiple subtask without dependence (SubTask).
In this step, requesting processing can be asked, according to described client, the service call related to and predefine rule, and the request of described client is decomposed into multiple subtask without dependence.
For example, if the service call that client request is involved by A can be divided into N number of operation independently executed, then in this step, this client can be asked A to be decomposed into N number of subtask without dependence by predefined rule by requesting processing.
Step 204, binds the parameter relevant to each subtask among each subtask.
In this step, the parameter relevant with each subtask can be bound by requesting processing with corresponding subtask, forms corresponding closure object.Wherein, described closure object includes: the object of call method and call method desired parameters.
For example, if subtask a is checking client's legitimacy, then in this step, can by the parameter (such as, user name, password and/or ID etc.) relevant to client identity and this subtask a binding.And if subtask b is to server up transfer file, then in this step, can by the parameter relevant to files passe operation and this subtask b binding.The rest may be inferred.
Wherein, in the preferred embodiment, the parameter that described and each subtask is relevant also can farther include: the serial number of the client request belonging to subtask.
By above-mentioned step 201~204, the client received request can be decomposed into multiple subtask without dependence by requesting processing.
For example, when the client received by requesting processing asks to ask for the user file upload service in cloud storage, in this request, client is asked in the server in a files passe to cloud storage.Now, the request of this client can be decomposed into multiple subtasks without dependence as described below by requesting processing:
1) subtask a: authenticating users.
The purpose of this subtask is in that to communicate with certificate server, and verifies ID effectiveness.If this user in the blacklist of storage, does not then allow this user to carry out the operation of files passe in certificate server;Otherwise, this user is not allowed to carry out the operation of files passe.
This subtask belongs to network.
2) subtask b: the effectiveness of validation task key (SessionKey).
The purpose of this subtask is in that to communicate with task (Session) server, and verifies whether before the deadline SessionKey.If SessionKey is before the deadline, then this user is allowed to carry out the operation of files passe;Otherwise, this user is not allowed to carry out the operation of files passe.
This subtask falls within network.
3) subtask c: for uploading the general unique identifier of file generated (UUID).
The purpose of this subtask is in that as the UUID that the required file generated uploaded is uniquely corresponding.
This subtask belongs to CUP intensive task.
4) subtask d: upload and store file.
The purpose of this subtask is in that user is needed the files passe uploaded and is stored in file server.
This subtask belongs to local I/O intensive type task.
Owing to traditional handling process to client request is essentially all serial operation, namely order performs each operation, and the therefore required process time is longer.And use method provided by the present invention, then can asking to be decomposed into 4 subtasks by the client in above-mentioned example, each subtask can perform simultaneously, such that it is able to greatly shortening processes the time, strengthen Consumer's Experience, and the hardware resource of server can be utilized fully.
Step 102, is all sent to each subtask an independent working cell (WorkUnit) and processes.
Owing in a step 101, the client received request is decomposed into multiple subtask without dependence by requesting processing, and therefore in this step, each subtask can be all sent to an independent working cell and process by requesting processing.For example, it is assumed that client request is broken down into N number of subtask without dependence, then described N number of subtask can be sent respectively to N number of unit that operates independently of each other and processes by requesting processing, so that each subtask can be executed in parallel.
It is also preferred that the left in a particular embodiment of the present invention, in order to distinguish the working cell corresponding to each subtask, described requesting processing is also by the mark (ID) of working cell corresponding with each subtask for record.
Step 103, what receive the return of each working cell is successfully processed result or failure handling result.
In above-mentioned step 102, each subtask has been sent to an independent working cell, and therefore the subtask received will be processed by each working cell respectively accordingly, and returns result to requesting processing;Requesting processing then will receive the result that each working cell returns.Wherein, described result includes: be successfully processed result and failure handling result.
If subtask processes successfully, then corresponding working cell will return to requesting processing and be successfully processed result;And if subtask processes unsuccessfully, then corresponding working cell will return failure handling result to requesting processing.
It is also preferred that the left in a particular embodiment of the present invention, when working cell is successfully processed result to requesting processing return, the subtask that it is handled also can be designated and complete by working cell further, namely represents that this subtask is successfully processed.
It is also preferred that the left in the specific embodiment of invention, also can pre-set an initial value is the triggering variable of 0.Now, this step 103 also can farther include: when requesting processing receives when being successfully processed result of a working cell return, the value of described triggering variable is increased by one by requesting processing.Therefore, when the value of described triggering variable is equal to the total number of all subtasks, then it represents that what receive all subtasks within a predetermined period of time is successfully processed result.
It is also preferred that the left for the ease of performing rolling back action that may be present in subsequent step, in the specific embodiment of invention, this step 103 also can farther include:
When described completed subtask is qualitative change operation (M-OP, ManipulatingOperation) time, working cell is the serial number of client request belonging to described completed subtask, performs to record this completed subtask in entry (UndoItem) in default rollback.Wherein, described M-OP is: the operation of change state or the operation of write data.
Preferably, in the specific embodiment of invention, when described completed subtask is non-qualitative change operation (NonM-OP, NonManipulatingOperation), working cell does not carry out performing to record in entry (UndoItem) operation of this completed subtask in default rollback.
Wherein, described NonM-OP is: other operation except operating except M-OP.Such as, data query operation, verification operation, data sorting operation etc..
Step 104, when receiving when being successfully processed result of all subtasks within a predetermined period of time, is sent to corresponding client by all of being successfully processed after result merges operation;Otherwise, interrupt the process of all subtasks being not fully complete, and all completed subtasks are carried out rolling back action.
Owing to the particular content of each subtask is likely to and differs, the handling duration that therefore each working cell is required when the subtask received is processed also might not be equal.So, in a particular embodiment of the present invention, a predetermined amount of time will be pre-set.The length of this predetermined amount of time can pre-set according to practical situations.If what requesting processing received all subtasks within a predetermined period of time is successfully processed result, then show that the request of whole client is successfully executed, now, the all of result that is successfully processed that each working cell can be returned by requesting processing merges operation, then as the response message that above-mentioned client is asked, the result after merging is sent to corresponding client.And if within a predetermined period of time, have at least one subtask not to be successfully processed (namely not return within a predetermined period of time and be successfully processed result, or return failure handling result within a predetermined period of time), then show that the request of the client belonging to this subtask cannot be successfully executed, now, requesting processing will interrupt the process of all subtasks being not fully complete in the request of this client, and all completed subtasks in the request of this client are carried out rolling back action.
Additionally, in a particular embodiment of the present invention, if requesting processing does not receive the result (including being successfully processed result and failure handling result) that any one working cell returns within a predetermined period of time, then showing that all subtasks that this client is asked all are not successfully executed within a predetermined period of time, the request of this client naturally also cannot be successfully executed within a predetermined period of time.Now, owing to all of subtask is not all successfully executed, therefore without carrying out interrupt operation and rolling back action, and can directly terminate whole flow process.
It addition, in a particular embodiment of the present invention, described rolling back action refers to: completed subtask returns to the state before being processed by working cell.
Additionally, in a particular embodiment of the present invention, it is possible to use the step 104 that accomplished in many ways is above-mentioned, below will realize method for one therein and be described in detail.
Such as, Fig. 3 is the schematic flow sheet of a kind of specific implementation of step 104 in the embodiment of the present invention.As it is shown on figure 3, in a particular embodiment of the present invention, described step 104 can be realized by step as described below:
Step 301, it is judged that whether the intervalometer preset is overtime;If it is, perform step 305;Otherwise, step 302 is performed.
Owing to each working cell is after carrying out the subtask received processing accordingly, to return to requesting processing and be successfully processed result or failure handling result, requesting processing then will wait in predetermined amount of time that each working cell returns corresponding result.
But, owing to handling duration required when the subtask received is processed by each working cell is likely less than the length of predetermined amount of time, it is also possible to more than the length of predetermined amount of time.Therefore each working cell is likely to return result to requesting processing within a predetermined period of time, it is also possible to just just return result to requesting processing after predetermined amount of time.
So, in a particular embodiment of the present invention, it is possible to pre-set an intervalometer, and the timing length of this intervalometer is equal to the length of the predetermined amount of time pre-set, and after performing above-mentioned steps 102, namely open above-mentioned intervalometer.Therefore, in this step, when requesting processing receives result (i.e. success result or the failure handling result) that working cell returns, can first determine whether that whether the intervalometer preset is overtime;If it is, perform step 305;Otherwise, step 302 is performed.
It is also preferred that the left in a particular embodiment of the present invention, when default timer expiry, requesting processing also can process the information of time-out further to client return.
Step 302, it is judged that whether the result received is for being successfully processed result;If it is, perform step 303;Otherwise, step 305 is performed.
In a particular embodiment of the present invention, when requesting processing receives the result that working cell returns within a predetermined period of time, this result is probably and is successfully processed result, it is also possible to failure handling result.Therefore, in this step, requesting processing will determine that whether this result is for being successfully processed result.If it is, also need to continue to determine whether that all of subtask is all successfully processed, namely perform follow-up step 303;If it is not, then show that this subtask is not successfully executed, the client request belonging to this subtask also will be unable to be successfully executed.Now, requesting processing performs step 305.
It is also preferred that the left in a particular embodiment of the present invention, when the result received is not be successfully processed result (i.e. failure handling result), requesting processing also can process failed information to client return further.
Step 303, it is judged that whether all subtasks are all successfully processed, if it is, perform step 304;Otherwise, execution step 103 is returned.
When being successfully executed due to any one subtask, all in step 103 this subtask will be designated executed, therefore, in this step, requesting processing can by judging that the mark of each subtask judges whether that all of subtask is all successfully processed, for example, it may be judged whether the mark of all subtasks is and completes.If all subtasks are all successfully processed, then can perform step 304;Otherwise, return is performed step 103.
It is also preferred that the left in a particular embodiment of the present invention, if pre-setting triggering variable, then in this step 304, it is judged that the method that all subtasks have all been successfully processed may is that whether the value judging described triggering variable is equal to the total number of all subtasks;If it is, all subtasks are all successfully processed;Otherwise, then a subtask is had at least to be successfully processed not yet.
Step 304, is sent to corresponding client, process ends by all of being successfully processed after result merges operation.
Owing to now all of subtask is all successfully processed, therefore in this step, received all results that are successfully processed can be merged operation by requesting processing, then the result after merging are sent to corresponding client, and terminate whole flow process.
Preferably, if in step 103, the serial number that working cell has been asked according to client have recorded completed subtask in default UndoItem, then when this client asks all of subtask to be all successfully processed, the completed subtask recorded in UndoItem then need not perform rolling back action again.So, in the preferred embodiment, it being sent to after all of result is merged operation after corresponding client, described step 304 also can farther include:
Delete the rollback corresponding with the serial number of described client request and perform entry.
Further, in the preferred embodiment, a garbage collection unit (GCWorker can be pre-set in the server, GarbagecollectionWorker), for storing UndoItem, and according to performing instruction, the subtask of storage in corresponding UndoItem is carried out rolling back action;Also can delete corresponding UndoItem according to abandoning instruction.
Therefore, in a particular embodiment of the present invention, described requesting processing can send to described garbage collection unit and abandon instruction, and this abandons the serial number carrying client request in instruction;Described garbage collection unit then can abandon instruction according to this and delete the UndoItem corresponding with described serial number.
Step 305, interrupts the process of all subtasks being not fully complete, and all completed subtasks is carried out rolling back action.
Owing to now having at least the subtask of not to be successfully processed within a predetermined period of time, the client request that therefore this subtask is corresponding also cannot be successfully executed.Therefore in this step, requesting processing can interrupt the process of all subtasks being not fully complete, and all completed subtasks are carried out rolling back action, then terminates whole flow process again.
It is also preferred that the left in a particular embodiment of the present invention, the process of all subtasks being not fully complete of described interruption may include that
Described requesting processing sends interrupt instruction to the working cell corresponding to all subtasks being not fully complete;
The process to the subtask being not fully complete is interrupted according to the interrupt instruction received in described working cell.
It is also preferred that the left due to the information storing all completed subtasks in the UndoItem corresponding with the serial number that described client is asked, therefore, in a particular embodiment of the present invention, described all completed subtasks are carried out rolling back action may is that
All subtasks of storage in the UndoItem corresponding with the serial number that described client is asked are carried out rolling back action.
Specifically, in the preferred embodiment, described requesting processing can send to described garbage collection unit and perform instruction, carries the serial number of client request in this execution instruction;Described garbage collection unit then can carry out rolling back action according to all subtasks of storage in this execution instruction pair UndoItem corresponding with described serial number.
According to said method provided by the invention, present invention also offers the parallel processing apparatus of corresponding complex task, specifically refer to Fig. 4.
Fig. 4 is the structural representation of the parallel processing apparatus of the complex task in the embodiment of the present invention.As shown in Figure 4, the parallel processing apparatus 400 of described complex task includes: requesting processing 401, garbage collection unit 402 and multiple working cell 403.
Wherein, described requesting processing 401, for the client received request is decomposed into multiple subtask without dependence, and each subtask is all sent to an independent working cell 403;It is additionally operable to receive that each working cell 403 returns is successfully processed result or failure handling result, and when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client;When being successfully processed result when there being at least one subtask not return within a predetermined period of time, send interrupt instruction to the working cell 403 corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit 402;
Described working cell 403, for the subtask received is processed, and is successfully processed result or failure handling result to the return of described requesting processing 401;It is additionally operable to interrupt the process to the subtask being not fully complete according to the interrupt instruction received;
Described garbage collection unit 402, for carrying out rolling back action according to the execution instruction received to all completed subtasks.
It is also preferred that the left in a particular embodiment of the present invention, described working cell 403, it is additionally operable to, when being successfully processed result to requesting processing 401 return, be designated the subtask that it is handled and complete.
Preferably, in a particular embodiment of the present invention, described working cell 403, it is additionally operable to when described completed subtask is qualitative change operation, belonging to described completed subtask, the serial number of client request, sends recording instruction to described garbage collection unit 402;
Described garbage collection unit 402, is additionally operable to perform to record this completed subtask in entry in the rollback prestored according to recording instruction.
Preferably, in a particular embodiment of the present invention, described requesting processing 401, it may also be used for when receiving when being successfully processed result of all subtasks within a predetermined period of time, to garbage collection unit 402 send carry client request serial number abandon instruction;Be additionally operable to when have at least one subtask within a predetermined period of time return be successfully processed result time, to garbage collection unit 402 send perform instruction;
Described garbage collection unit 402, is additionally operable to the instruction deletion rollback corresponding with serial number that abandon according to receiving and performs entry;It is additionally operable to all completed subtask of storage in the rollback execution entry that instruction pair is corresponding with serial number that performs according to receiving and carries out rolling back action.
It is also preferred that the left in a particular embodiment of the present invention, described requesting processing 401 may further include: decomposing module result treatment module (not shown in Fig. 4);
Described decomposing module, for the client received request is decomposed into multiple subtask without dependence, and is all sent to an independent working cell 403 by each subtask;
Described result treatment module, for receive each working cell 403 return be successfully processed result or failure handling result;And for when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation being sent to corresponding client;When being successfully processed result when there being at least one subtask not return within a predetermined period of time, send interrupt instruction to the working cell 403 corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit 402.
It is also preferred that the left in a particular embodiment of the present invention, described decomposing module can further include: receives submodule and decomposes submodule.
Described reception submodule, for obtaining the parameter of required service from the client request received, and is that the request of described client generates a globally unique serial number;Described client asked, the parameter of required service and serial number are sent to described decomposition submodule;
Described decomposition submodule, for asking the service call related to according to described client, is decomposed into multiple subtask without dependence the parameter that binding is relevant to each subtask among each subtask by predefined rule by the request of described client.
It is also preferred that the left in a particular embodiment of the present invention, the parallel processing apparatus of described complex task may further comprise: intervalometer 404;The timing length of described intervalometer 404 is equal to the length of the predetermined amount of time pre-set.
Described intervalometer 404, for when described intervalometer 404 is overtime, sending time-out information to described requesting processing 401;
Described requesting processing 401, for according to the time-out information received, sending interrupt instruction, and send execution instruction to garbage collection unit 402 to the working cell 403 corresponding to all subtasks being not fully complete.
It is also preferred that the left in a particular embodiment of the present invention, described requesting processing 401, it may also be used for according to the time-out information received, process the information of time-out to client return.
Preferably, in a particular embodiment of the present invention, described requesting processing 401, it is additionally operable to when the result received is failure handling result, send interrupt instruction to the working cell 403 corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit 402.
It is also preferred that the left in a particular embodiment of the present invention, described requesting processing 401, it is additionally operable to when the result received is failure handling result, processes failed information to client return.
In summary, in the method for parallel processing of the complex task provided in the present invention and device, by the client received request is decomposed into multiple subtask without dependence, and each subtask is all sent to an independent working cell processes;And when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client;And when have at least one subtask within a predetermined period of time return be successfully processed result time, then interrupt the process of all subtasks being not fully complete, and all completed subtasks are carried out rolling back action, such that it is able to client request is carried out parallelization process, it is effectively improved the response speed of single request, reduce response time, substantially increase the Experience Degree of user;And owing to being the processing mode of parallel type, therefore the resource of server side can also be made full use of by ensuring escapement from confliction, thus substantially increasing the resource utilization of server side.Additionally, due in the inventive solutions, employ independent garbage collection unit, as long as the subtask of any one qualitative change action type processes after unsuccessfully, completed the subtask carrying out rolling back action can be needed all to carry out corresponding rolling back action by garbage collection unit to all, such that it is able to greatly reduce the workload of requesting processing, improve processing speed further, and perfect failure recovery mechanism, so that the content of subtask can be unrestricted.Additionally, in the inventive solutions, also use the mechanism of time-out, such that it is able to the overtime control simplified between Clinet/Sever processes, improve the degree of accuracy of overtime control, reduce the complexity of design.
Additionally, due to the asynchronous process patten transformation of original complexity can be simple synchronization process pattern by technical scheme, such that it is able to be substantially reduced the complexity of design, and implementation is also very easy.
The foregoing is only presently preferred embodiments of the present invention, be not intended to limit protection scope of the present invention.All any amendment of making, equivalent replace and improvement etc. within the spirit and principles in the present invention, should be included within protection scope of the present invention.
Claims (25)
1. a method for parallel processing for complex task, described method includes:
The client received request is decomposed into multiple subtask without dependence by A, requesting processing, and each subtask is all sent to an independent working cell processes;
B, requesting processing receive each working cell return be successfully processed result or failure handling result;
C, when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client by requesting processing;And when having at least one subtask not return within a predetermined period of time to be successfully processed result, requesting processing interrupts the process of all subtasks being not fully complete, and needs the subtask carrying out rolling back action to carry out rolling back action to completed;
Wherein, described step A includes:
Requesting processing obtains the parameter of required service from the client request received;
A globally unique serial number is generated for the request of described client;
Ask the service call related to according to described client, by predefined rule, the request of described client is decomposed into multiple subtask without dependence;
The parameter relevant to each subtask is bound among each subtask.
2. the method for parallel processing of complex task as claimed in claim 1, wherein, described bind the parameter relevant to each subtask among each subtask and includes:
The parameter relevant with each subtask is bound with corresponding subtask, forms corresponding closure object;
Wherein, described closure object includes: the object of call method and call method desired parameters.
3. the method for parallel processing of complex task as claimed in claim 2, wherein, also can farther include in the parameter that described and each subtask is relevant:
The serial number of the client request belonging to subtask.
4. the method for parallel processing of complex task as claimed in claim 1, wherein, described step B may further comprise:
When working cell is successfully processed result to requesting processing return, the subtask that it is handled is designated and completes by described working cell.
5. the method for parallel processing of complex task as claimed in claim 4, wherein, described step B may further comprise:
When described completed subtask is qualitative change operation, working cell is the serial number of client request belonging to described completed subtask, performs to record this completed subtask in entry in default rollback;Wherein, described qualitative change operates the operation of the operation for change state or write data.
6. the method for parallel processing of complex task as claimed in claim 5, wherein, pre-setting an initial value is the triggering variable of 0, then described step B may further comprise:
When requesting processing receives when being successfully processed result of a working cell return, the value of described triggering variable is increased by one by described requesting processing.
7. the method for parallel processing of complex task as claimed in claim 6, wherein, described step C includes:
C1, when default timer expiry, perform step C5;Otherwise, step C2 is performed;Wherein, the timing length of described intervalometer is equal to the length of the predetermined amount of time pre-set;
C2, when the result received is for being successfully processed result, perform step C3;Otherwise, step C5 is performed;
C3, when all subtasks are all successfully processed, perform step C4;Otherwise, execution step B is returned;
C4, all of result is merged operation after be sent to corresponding client, process ends;
C5, interrupt the process of all subtasks being not fully complete, and all completed subtasks are carried out rolling back action.
8. the method for parallel processing of complex task as claimed in claim 7, wherein, described method may further comprise:
When default timer expiry, requesting processing processes the information of time-out to client return.
9. the method for parallel processing of complex task as claimed in claim 7, wherein, described method farther includes:
When the result received is not be successfully processed result, requesting processing processes failed information to client return.
10. the method for parallel processing of complex task as claimed in claim 7, wherein, it is judged that the method that all subtasks have all been successfully processed is:
Judge whether the value of described triggering variable is equal to the total number of all subtasks;If it is, all subtasks are all successfully processed;Otherwise, a subtask is had at least to be successfully processed not yet.
11. the method for parallel processing of complex task as claimed in claim 7, wherein, described step C4 farther includes:
Delete the rollback corresponding with the serial number of described client request and perform entry.
12. the method for parallel processing of complex task as claimed in claim 11, wherein, the corresponding rollback execution entry of serial number that described deletion is asked with described client includes:
Requesting processing can send to the garbage collection unit that pre-sets abandon instruction, described in abandon the serial number carrying client request in instruction;
Described garbage collection unit according to described in abandon instruction and delete corresponding with described serial number rollback execution entry.
13. the method for parallel processing of complex task as claimed in claim 7, wherein, described all completed subtasks carried out rolling back action include:
The rollback corresponding with the serial number that described client is asked is performed all subtasks of storage in entry and carries out rolling back action.
14. the method for parallel processing of complex task as claimed in claim 13, wherein, described all subtasks that the rollback corresponding with the serial number that described client is asked is performed store in entry carry out rolling back action and include:
Requesting processing sends to the garbage collection unit pre-set and performs instruction, carries the serial number of client request in described execution instruction;
Described garbage collection unit performs all subtasks of storage in entry according to the rollback that described execution instruction pair is corresponding with described serial number and carries out rolling back action.
15. the method for parallel processing of complex task as claimed in claim 1, wherein, the process of all subtasks being not fully complete of described interruption includes:
Interrupt instruction is sent to the working cell corresponding to all subtasks being not fully complete;
The process to the subtask being not fully complete is interrupted according to the interrupt instruction received in described working cell.
16. the parallel processing apparatus of a complex task, it is characterised in that this device includes: requesting processing, garbage collection unit and multiple working cell;
Described requesting processing, for the client received request is decomposed into multiple subtask without dependence, and is all sent to an independent working cell by each subtask;It is additionally operable to receive that each working cell returns is successfully processed result or failure handling result, and when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation is sent to corresponding client;When being successfully processed result when there being at least one subtask not return within a predetermined period of time, send interrupt instruction to the working cell corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit;
Described working cell, for the subtask received is processed, and is successfully processed result or failure handling result to the return of described requesting processing;It is additionally operable to interrupt the process to the subtask being not fully complete according to the interrupt instruction received;
Described garbage collection unit, for carrying out rolling back action according to the execution instruction received to all completed subtasks.
17. the parallel processing apparatus of complex task as claimed in claim 16, it is characterised in that:
Described working cell, is additionally operable to, when being successfully processed result to requesting processing return, be designated the subtask that it is handled and complete.
18. the parallel processing apparatus of complex task as claimed in claim 17, it is characterised in that:
Described working cell, is additionally operable to when described completed subtask is qualitative change operation, and working cell is the serial number of client request belonging to described completed subtask, sends recording instruction to described garbage collection unit;
Described garbage collection unit, is additionally operable to perform to record this completed subtask in entry in the rollback prestored according to recording instruction.
19. the parallel processing apparatus of complex task as claimed in claim 18, it is characterised in that:
Described requesting processing, it may also be used for when receiving when being successfully processed result of all subtasks within a predetermined period of time, to garbage collection unit send carry client request serial number abandon instruction;Be additionally operable to when have at least one subtask within a predetermined period of time return be successfully processed result time, to garbage collection unit send perform instruction;
Described garbage collection unit, is additionally operable to the instruction deletion rollback corresponding with serial number that abandon according to receiving and performs entry;It is additionally operable to all completed subtask of storage in the rollback execution entry that instruction pair is corresponding with serial number that performs according to receiving and carries out rolling back action.
20. the parallel processing apparatus of complex task as claimed in claim 16, it is characterised in that described requesting processing may further comprise: decomposing module and result treatment module;
Described decomposing module, for the client received request is decomposed into multiple subtask without dependence, and is all sent to an independent working cell by each subtask;
Described result treatment module, for receive each working cell return be successfully processed result or failure handling result;And for when receiving when being successfully processed result of all subtasks within a predetermined period of time, all of being successfully processed after result merges operation being sent to corresponding client;When being successfully processed result when there being at least one subtask not return within a predetermined period of time, send interrupt instruction to the working cell corresponding to all subtasks being not fully complete, and send execution instruction to garbage collection unit.
21. the parallel processing apparatus of complex task as claimed in claim 20, it is characterised in that described decomposing module may further comprise: reception submodule and decomposes submodule;
Described reception submodule, for obtaining the parameter of required service from the client request received, and is that the request of described client generates a globally unique serial number;Described client asked, the parameter of required service and serial number are sent to described decomposition submodule;
Described decomposition submodule, for asking the service call related to according to described client, is decomposed into multiple subtask without dependence the parameter that binding is relevant to each subtask among each subtask by predefined rule by the request of described client.
22. the parallel processing apparatus of complex task as claimed in claim 16, it is characterised in that the parallel processing apparatus of described complex task may further comprise: intervalometer;The timing length of described intervalometer is equal to the length of the predetermined amount of time pre-set;
Described intervalometer, for when described timer expiry, sending time-out information to described requesting processing;
Described requesting processing, for according to the time-out information received, sending interrupt instruction, and send execution instruction to garbage collection unit to the working cell corresponding to all subtasks being not fully complete.
23. the parallel processing apparatus of complex task as claimed in claim 22, it is characterised in that:
Described requesting processing, is additionally operable to, according to the time-out information received, process the information of time-out to client return.
24. the parallel processing apparatus of complex task as claimed in claim 16, it is characterised in that:
Described requesting processing, is additionally operable to when the result received is failure handling result, sends interrupt instruction to the working cell corresponding to all subtasks being not fully complete, and sends execution instruction to garbage collection unit.
25. the parallel processing apparatus of complex task as claimed in claim 16, it is characterised in that
Described requesting processing, is additionally operable to when the result received is failure handling result, processes failed information to client return.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210274076.4A CN103019651B (en) | 2012-08-02 | 2012-08-02 | The method for parallel processing of complex task and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210274076.4A CN103019651B (en) | 2012-08-02 | 2012-08-02 | The method for parallel processing of complex task and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103019651A CN103019651A (en) | 2013-04-03 |
CN103019651B true CN103019651B (en) | 2016-06-29 |
Family
ID=47968294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210274076.4A Active CN103019651B (en) | 2012-08-02 | 2012-08-02 | The method for parallel processing of complex task and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103019651B (en) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104125089A (en) * | 2013-04-28 | 2014-10-29 | 华为技术有限公司 | Network transaction control method and execution method, and network controller and forwarding equipment |
CN103428217B (en) * | 2013-08-19 | 2016-05-25 | 中国航空动力机械研究所 | Operation distribution method and distribution system that distributed parallel calculates |
CN103457770B (en) * | 2013-08-30 | 2017-03-08 | 华为技术有限公司 | Web transactions control method and execution method and network controller and forwarding unit |
CN103685571B (en) * | 2013-12-31 | 2017-12-19 | 曙光云计算集团有限公司 | Service implementation method and device under cloud environment |
CN104778074B (en) * | 2014-01-14 | 2019-02-26 | 腾讯科技(深圳)有限公司 | A kind of calculating task processing method and processing device |
CN104077111B (en) * | 2014-06-24 | 2018-03-02 | 用友优普信息技术有限公司 | The concurrent access control method and device of business operation |
CN105335143A (en) * | 2014-07-30 | 2016-02-17 | 阿里巴巴集团控股有限公司 | Business processing method and apparatus |
CN106484524A (en) * | 2015-08-28 | 2017-03-08 | 阿里巴巴集团控股有限公司 | A kind of task processing method and device |
CN105260242A (en) * | 2015-10-29 | 2016-01-20 | 无锡天脉聚源传媒科技有限公司 | Task processing method and device |
CN105915610A (en) * | 2016-04-19 | 2016-08-31 | 乐视控股(北京)有限公司 | Asynchronous communication method and device |
FR3052890B1 (en) * | 2016-06-21 | 2018-07-13 | Thales Sa | METHOD OF RECEIVING GUARANTEE OF COMMON SIGNALS IN AN AVIONIC SYSTEM COMPRISING A PLURALITY OF ELECTRONIC COMPUTERS |
CN106155786A (en) * | 2016-06-23 | 2016-11-23 | 浪潮(北京)电子信息产业有限公司 | A kind of cloud platform task management method and system |
CN106302808A (en) * | 2016-09-14 | 2017-01-04 | 广东欧珀移动通信有限公司 | Data transmission method and mobile terminal |
CN107885593B (en) * | 2016-09-30 | 2021-07-06 | 中国电信股份有限公司 | User authentication method and device |
CN106775959B (en) * | 2016-12-06 | 2017-12-22 | 上海壹账通金融科技有限公司 | distributed transaction processing method and system |
CN106603708B (en) * | 2016-12-30 | 2019-10-18 | 中国建设银行股份有限公司 | A kind of method for processing business and device |
CN107704489B (en) * | 2017-08-21 | 2021-04-13 | 北京小米移动软件有限公司 | Processing method and device for read-write timeout and computer readable storage medium |
CN107656992B (en) * | 2017-09-14 | 2021-09-21 | 上海交通大学 | Multi-insertion-source-oriented snapshot version management method |
CN107920120A (en) * | 2017-11-22 | 2018-04-17 | 北京小米移动软件有限公司 | Method for processing business, device and computer-readable recording medium |
CN108563531A (en) * | 2018-04-18 | 2018-09-21 | 中国银行股份有限公司 | Data processing method and device |
CN109324892B (en) * | 2018-07-24 | 2021-01-26 | 北京京东尚科信息技术有限公司 | Distributed management method, distributed management system and device |
CN109495452B (en) * | 2018-10-24 | 2020-08-11 | 苏宁易购集团股份有限公司 | Response timeout processing method, server and client response timeout processing system |
CN109491789A (en) * | 2018-11-02 | 2019-03-19 | 浪潮电子信息产业股份有限公司 | Distributed storage system service equalization processing method, device and equipment |
CN109785042A (en) * | 2018-12-13 | 2019-05-21 | 深圳平安财富宝投资咨询有限公司 | Abnormality eliminating method, server, storage medium and the device of distributed deployment |
CN110718216A (en) * | 2019-03-25 | 2020-01-21 | 广东省信息安全测评中心 | Network intelligent scheduling system and method |
CN110275889B (en) * | 2019-06-26 | 2023-11-24 | 深圳前海微众银行股份有限公司 | Feature processing method and device suitable for machine learning |
CN112243018B (en) * | 2019-07-19 | 2023-03-10 | 腾讯科技(深圳)有限公司 | Content processing method, device and storage medium |
CN113051069B (en) * | 2019-12-28 | 2023-12-08 | 华为技术有限公司 | Data analysis method and device based on multitasking and terminal equipment |
CN111487920A (en) * | 2020-05-26 | 2020-08-04 | 上海威派格智慧水务股份有限公司 | Data acquisition and processing system |
CN113760400A (en) * | 2021-01-13 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | Request processing method and device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425024A (en) * | 2008-10-24 | 2009-05-06 | 中国移动通信集团山东有限公司 | Multitasking method and device |
CN102402423A (en) * | 2010-09-19 | 2012-04-04 | 百度在线网络技术(北京)有限公司 | Method and equipment for performing multi-task processing in network equipment |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101887444B (en) * | 2009-05-15 | 2012-12-19 | 国际商业机器公司 | Navigation method and system for webpage |
KR101710910B1 (en) * | 2010-09-27 | 2017-03-13 | 삼성전자 주식회사 | Method and apparatus for dynamic resource allocation of processing unit |
-
2012
- 2012-08-02 CN CN201210274076.4A patent/CN103019651B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425024A (en) * | 2008-10-24 | 2009-05-06 | 中国移动通信集团山东有限公司 | Multitasking method and device |
CN102402423A (en) * | 2010-09-19 | 2012-04-04 | 百度在线网络技术(北京)有限公司 | Method and equipment for performing multi-task processing in network equipment |
Also Published As
Publication number | Publication date |
---|---|
CN103019651A (en) | 2013-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103019651B (en) | The method for parallel processing of complex task and device | |
JP7197612B2 (en) | Execution of auxiliary functions on on-demand network code execution systems | |
US10033816B2 (en) | Workflow service using state transfer | |
CN101217571B (en) | Write/read document operation method applied in multi-copy data grid system | |
CN102426594B (en) | Method and system for operating database | |
CN111752965B (en) | Real-time database data interaction method and system based on micro-service | |
WO2021159638A1 (en) | Method, apparatus and device for scheduling cluster queue resources, and storage medium | |
WO2023197670A1 (en) | Distributed storage system control method and apparatus, and readable storage medium | |
CN107689976B (en) | File transmission method and device | |
US20040078782A1 (en) | Workload management of stateful program entities | |
CN111338773A (en) | Distributed timed task scheduling method, scheduling system and server cluster | |
JP2001513588A (en) | Method for loading a function provided by a first computer (server) into a second computer (client) | |
CN111784329A (en) | Service data processing method and device, storage medium and electronic device | |
CN104219235A (en) | Distributed transaction requesting method and device | |
US20170085653A1 (en) | Method, device and system for message distribution | |
CN110659303A (en) | Read-write control method and device for database nodes | |
CN113157411A (en) | Reliable configurable task system and device based on Celery | |
CN116954816A (en) | Container cluster control method, device, equipment and computer storage medium | |
CN111831408A (en) | Asynchronous task processing method and device, electronic equipment and medium | |
CN113722114A (en) | Data service processing method and device, computing equipment and storage medium | |
CN111294377B (en) | Dependency network request sending method, terminal device and storage medium | |
Thain et al. | Building reliable clients and services | |
CN111881086A (en) | Big data storage method, big data query method, electronic device and storage medium | |
CN100426241C (en) | Message level soft interrupt processing method in service system structure | |
CN115858667A (en) | Method, apparatus, device and storage medium for synchronizing data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170111 Address after: 266100 Shandong Province, Qingdao city Laoshan District Songling Road No. 399 Patentee after: Poly Polytron Technologies Inc Address before: 266061 Laoshan, Qingdao province Hongkong District No. East Road, room 248, room 131 Patentee before: Hisense Media Networks Co., Ltd. |