ASSIGNING MONITORING RESPONSIBILITIES IN DISTRIBUTED SYSTEMS USING OPTIMISTIC CONCURRENCY
First Claim
1. A method performed by a service management device, the method comprising:
- receiving, from a plurality of worker machines, a plurality of requests, each request from a worker machine indicating a respective work item to be assigned to that worker machine;
in response to receiving each request, performing an assignment attempt operation, the assignment attempt operation configured to;
(i) succeed and insert a reference to the worker machine that issued that request in a database entry associated with the respective work item if no other reference to a worker machine has yet been inserted in the database entry and(ii) otherwise report failure on the assignment attempt operation; and
returning, by the service management device, a reply to the worker machine that issued each request, the reply indicating whether the assignment attempt operation succeeded, that worker machine configured to;
(i) process the respective work item in response to a reply indicating success and(ii) refrain from processing the respective work item in response to a reply indicating lack of success.
7 Assignments
0 Petitions
Accused Products
Abstract
A method performed by a service management device includes (a) receiving from a plurality of worker machines, a plurality of requests, each request from a worker machine indicating a respective work item to be assigned to that worker machine, (b) in response to receiving each request, performing an assignment attempt operation configured to (i) succeed and insert a reference to the worker machine that issued that request in a database entry associated with the respective work item if no other reference to a worker machine has yet been inserted in the database entry and (ii) otherwise report failure, and (c) returning a reply to the worker machine that issued each request indicating whether the assignment attempt operation succeeded, that worker machine configured to (i) process the respective work item in response to a successful reply and (ii) refrain from processing the respective work item in response to a failed reply.
23 Citations
18 Claims
-
1. A method performed by a service management device, the method comprising:
-
receiving, from a plurality of worker machines, a plurality of requests, each request from a worker machine indicating a respective work item to be assigned to that worker machine; in response to receiving each request, performing an assignment attempt operation, the assignment attempt operation configured to; (i) succeed and insert a reference to the worker machine that issued that request in a database entry associated with the respective work item if no other reference to a worker machine has yet been inserted in the database entry and (ii) otherwise report failure on the assignment attempt operation; and returning, by the service management device, a reply to the worker machine that issued each request, the reply indicating whether the assignment attempt operation succeeded, that worker machine configured to; (i) process the respective work item in response to a reply indicating success and (ii) refrain from processing the respective work item in response to a reply indicating lack of success. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product comprising a non-transitory computer-readable storage medium storing a set of instructions, which, when executed by a computing device, cause the computing device to:
-
receive, from a plurality of worker machines, a plurality of requests, each request from a worker machine indicating a respective work item to be assigned to that worker machine; in response to receiving each request, perform an assignment attempt operation, the assignment attempt operation configured to; (i) succeed and insert a reference to the worker machine that issued that request in a database entry associated with the respective work item if no other reference to a worker machine has yet been inserted in the database entry and (ii) otherwise report failure on the assignment attempt operation; and return a reply to the worker machine that issued each request, the reply indicating whether the assignment attempt operation succeeded, that worker machine configured to; (i) process the respective work item in response to a reply indicating success and (ii) refrain from processing the respective work item in response to a reply indicating lack of success. - View Dependent Claims (12, 13, 14)
-
-
15. An apparatus comprising:
-
network interface circuitry configured to communicate with a plurality of worker machines; memory coupled to processing circuitry configured to; receive, from the plurality of worker machines, a plurality of requests, each request from a worker machine indicating a respective work item to be assigned to that worker machine; in response to receiving each request, perform an assignment attempt operation, the assignment attempt operation configured to; (i) succeed and insert a reference to the worker machine that issued that request in a database entry associated with the respective work item if no other reference to a worker machine has yet been inserted in the database entry and (ii) otherwise report failure on the assignment attempt operation; and return a reply to the worker machine that issued each request, the reply indicating whether the assignment attempt operation succeeded, that worker machine configured to; (i) process the respective work item in response to a reply indicating success and (ii) refrain from processing the respective work item in response to a reply indicating lack of success. - View Dependent Claims (16, 17, 18)
-
Specification