Patent ID: 8838595

Claim:
A method for managing a distributed priority queue, comprising: at a computer system with a plurality of processors, volatile memory storing a list of queued objects in order based on a respective priority assigned to each respective object of the queued objects, and a database stored in non-volatile storage, wherein the database comprises a plurality of ranges of rows, and each range of rows corresponds to a respective unique index value: receiving a plurality of objects and storing each respective received object in a respective row of the database according to a respective assigned index value and a respective priority of the object; scanning a range of rows in the database corresponding to a first index value, wherein the range of rows corresponding to the first index value is sorted according to the respective priorities of the respective objects stored in the range of rows; identifying a high priority object within the range of rows; inserting the high priority object into the list of queued objects in priority order; and selecting an object of highest priority from the list of queued objects and initiating execution of a task corresponding to the selected object.