Patent ID: 8448180

Claim:
A distributed task system, comprising: a task transaction server having a memory with instructions stored therein and a processor, the instructions, when executed by the processor, provide a task-execution-feedback in response to receiving a task-execution-request that includes an execution condition for a given task and record the execution condition for the given task; and at least one task server having a self-balancing unit and a task execution unit, wherein the self-balancing unit is configured to send the task-execution-request to the task transaction server, receive the task-execution-feedback from the task transaction server, and trigger the task execution unit to execute the given task according to the task-execution-feedback received from the task transaction server; and wherein the task execution unit is connected with the self-balancing unit and is configured to execute the task, wherein the self-balancing unit is configured to check whether the task server is busy when the task-execution-feedback indicates that the task server can execute the task, and to further send a task check message to the task transaction server if the task server is busy, and wherein the task transaction server is configured to subsequently check if another task server is requesting for the task, and to return a result of checking to the self-balancing unit, wherein the system is configured to determine an execution encumbrance of the at least one task server at least partially based on a current number of task threads and a current number of long-duration task threads, and wherein the at least one task server is considered to be busy when the execution encumbrance of the task server has a value greater than or equal to a preset threshold.