Method, apparatus, and program for distributing a document object model in a web server cluster
First Claim
Patent Images
1. A computer implemented method for processing shared data comprising:
- receiving a request to perform a task on shared data;
creating a work item message for the task; and
publishing the work item message to a messaging service by posting the work item message to a topic of the messaging service based on a type of the task, wherein the topic is a category by which messages in the messaging service are sorted, wherein the type of the task is one of an edit task for modifying an unlocked node and a locking task for locking an unlocked node, wherein posting the work item message to a topic comprises posting the work item message to an edit topic with a filter value set to all nodes, wherein the edit topic is a category identifying non-transaction requests for unlocked nodes.
1 Assignment
0 Petitions
Accused Products
Abstract
An asynchronous, peer-to-peer design is provided for synchronizing data on machines within a cluster using messaging. The data may be represented in memory as a document object model in secondary storage. Messaging may be handled by a messaging system with topic destinations. The design supports persistence management, locking, and transactions with rollback, and maintains a uniform state for the data across all nodes and secondary storage at all times. Furthermore, barring catastrophic failure of all machines in the cluster and secondary storage, there is no possibility of losing committed data.
50 Citations
27 Claims
-
1. A computer implemented method for processing shared data comprising:
-
receiving a request to perform a task on shared data; creating a work item message for the task; and publishing the work item message to a messaging service by posting the work item message to a topic of the messaging service based on a type of the task, wherein the topic is a category by which messages in the messaging service are sorted, wherein the type of the task is one of an edit task for modifying an unlocked node and a locking task for locking an unlocked node, wherein posting the work item message to a topic comprises posting the work item message to an edit topic with a filter value set to all nodes, wherein the edit topic is a category identifying non-transaction requests for unlocked nodes.
-
-
2. A computer implemented method for processing shared data comprising:
-
receiving a request to perform a task on shared data; creating a work item message for the task; and publishing the work item message to a messaging service by posting the work item message to a topic of the messaging service based on a type of the task, wherein the topic is a category by which messages in the messaging service are sorted, wherein the type of the task is one of an edit task for modifying a locked node and an unlocking task for unlocking a locked node, wherein posting the work item message to a topic comprises posting the work item message to a transaction topic with a filter value set to a node originating the request, wherein the transaction topic is a category identifying transaction requests for locked nodes.
-
-
3. A computer implemented method for processing shared data comprising:
-
receiving a work item message from a messaging service by consuming the work item message from a topic of the messaging service, wherein the topic is a category by which messages in the messaging service are sorted; processing the work item message based on the topic; publishing a result to a result topic of the messaging service, wherein the result topic is a category identifying results of processing the work item message; and wherein consuming the work item message from a topic comprises consuming the work item message from an edit topic, wherein the edit topic is a category identifying non-transaction requests for unlocked nodes, and wherein the work item message consumed from the edit topic has a filter value set to all nodes. - View Dependent Claims (4, 5, 6, 7, 8)
-
-
9. A computer implemented method for processing shared data comprising:
-
receiving a work item message from a messaging service by consuming the work item message from a topic of the messaging service, wherein the topic is a category by which messages in the messaging service are sorted; processing the work item message based on the topic; publishing a result to a result topic of the messaging service, wherein the result topic is a category identifying results of processing the work item message; and wherein consuming the work item message from a topic comprises consuming the work item message from a transaction topic, wherein the transaction topic is a category identifying transaction requests for locked nodes, and wherein the work item message consumed from the transaction topic has a filter value set to an identifier of a locking node. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A data processing system for processing shared data comprising:
-
a bus, a storage device, wherein the storage device contains computer usable code; a communications unit connected to the bus; and a processing unit connected to the bus, wherein the processing unit executes the computer usable code to receive a request to perform a task on shared data; create a work item message for the task; and publish the work item message to a messaging service by posting the work item message to a topic of the messaging service based on a type of the task, wherein the topic is a category by which messages in the messaging service are sorted, and wherein the type of the task is one of an edit task for modifying an unlocked node and a locking task for locking an unlocked nodes wherein the processing unit, in executing the computer usable code to post the work item message to a topic of the messaging service based on a type of the task, executes the computer usable code to post the work item message to an edit topic with a filter value set to all nodes, wherein the edit topic is a category identifying non-transaction requests for unlocked nodes.
-
-
15. A data processing system for processing shared data comprising:
-
a bus, a storage device, wherein the storage device contains computer usable code; a communications unit connected to the bus; and a processing unit connected to the bus, wherein the processing unit executes the computer usable code to receive a request to perform a task on shared data; create a work item message for the task; and publish the work item message to a messaging service by posting the work item message to a topic of the messaging service based on a type of the task, wherein the topic is a category by which messages in the messaging service are sorted, and wherein the type of the task is one of an edit task for modifying a locked node and an unlocking task for unlocking a locked node, wherein the processing unit, in executing the computer usable code to publish the work item message to a messaging service by posting the work item message to a topic of the messaging service based on a type of the task, executes the computer usable code to post the work item message to a transaction topic with a filter value set to a node originating the request, wherein the transaction topic is a category identifying transaction requests for locked nodes.
-
-
16. A data processing system for processing shared data comprising:
-
a bus, a storage device, wherein the storage device contains computer usable code; a communications unit connected to the bus; and a processing unit connected to the bus, wherein the processing unit executes the computer usable code to receive a work item message from a messaging service by consuming the work item message from a topic of the messaging service, wherein the topic is a category by which messages in the messaging service are sorted; process the work item message based on the topic; publish a result to a result topic of the messaging service, wherein the result topic is a category identifying results of processing the work item message; and wherein the processing unit, in executing the computer usable code to receive a work item message from a messaging service by consuming the work item message from a topic of the messaging service, executes the computer usable code to consume a work item message from an edit topic, wherein the edit topic is a category identifying non-transaction requests for unlocked nodes, and wherein the work item message consumed from the edit topic has a filter value set to all nodes. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A data processing system for processing shared data comprising:
-
a bus, a storage device, wherein the storage device contains computer usable code; a communications unit connected to the bus; and a processing unit connected to the bus, wherein the processing unit executes the computer usable code to receive a work item message from a messaging service by consuming the work item message from a topic of the messaging service, wherein the topic is a category by which messages in the messaging service are sorted; process the work item message based on the topic; publish a result to a result topic of the messaging service, wherein the result topic is a category identifying results of processing the work item message; and wherein the processing unit, in executing the computer usable code to receive a work item message from a messaging service by consuming the work item message from a topic of the messaging service, executes the computer usable code to consume a work item message from a transaction topic, wherein the transaction topic is a category identifying transaction requests for locked nodes, and wherein the work item message consumed from the transaction topic has a filter value set to an identifier of a locking node. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A computer program product for processing shared data, the computer program product comprising:
-
a computer usable storage medium having computer usable program code embodied therein, the computer useable program code comprising; computer usable program code configured to receive a work item message from a messaging service by consuming the work item message from a topic of the messaging service, wherein the topic is a category by which messages in the messaging service are sorted and consuming the work item message from a topic comprises consuming the work item message from an edit topic, wherein the edit topic is a category identifying non-transaction requests for unlocked nodes, and wherein the work item message consumed from the edit topic has a filter value set to all nodes; computer usable program code configured to process the work item message based on the topic; and computer usable program code configured to publish a result to a result topic of the messaging service, wherein the result topic is a category identifying results of processing the work item message.
-
Specification