HIGH AVAILABILITY ARCHITECTURE FOR A CLOUD-BASED CONCURRENT-ACCESS COLLABORATION PLATFORM
First Claim
1. A high-availability system for managing documents on a cloud-based computing platform, the system comprising:
- two or more load balancers configured to route requests received from a client;
one or more document servers for handling the requests routed by the two or more load balancers,wherein each document server includes multiple document server instances, each of which is responsible for processing edits for particular documents, andwherein each document is dynamically associated with one document server instance;
a primary repository for periodically uploading snapshots of documents from the one or more document server instances, anda secondary repository for storing edits to the documents.
5 Assignments
0 Petitions
Accused Products
Abstract
Embodiments in the present disclosure include systems and methods related to a high-availability architecture for a cloud-based concurrent-access collaboration platform. The disclosed technology relates to an active data center which includes multiple document server instances that handle user requests for concurrently accessing documents. Multiple document server instances are implemented on a single physical server. This architecture uses an instance assignment manager to assign documents to the document server instances, a primary repository to store backup snapshots of the documents, and a datastore to store all changes made to the documents. The disclosed technology also involves a backup data center that can be swapped with the active data center automatically.
-
Citations
19 Claims
-
1. A high-availability system for managing documents on a cloud-based computing platform, the system comprising:
-
two or more load balancers configured to route requests received from a client; one or more document servers for handling the requests routed by the two or more load balancers, wherein each document server includes multiple document server instances, each of which is responsible for processing edits for particular documents, and wherein each document is dynamically associated with one document server instance; a primary repository for periodically uploading snapshots of documents from the one or more document server instances, and a secondary repository for storing edits to the documents. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for providing high availability to documents for collaborative editing on a cloud-computing platform, comprising:
-
one or more load balancers for receiving requests for document access from clients; and two or more data centers, each comprising; one or more load balancers for distributing the requests in the data centers; one or more document servers for handling the requests received from the one or more load balancers; and a data center manager that tracks which of the data centers is active wherein the load balancers routes the requests to the active data center. - View Dependent Claims (13, 14)
-
-
15. A high-availability system for managing documents on a cloud-computing platform, comprising:
one or more document server instances for handling client access requests to a document, each comprising; a client messaging module for responding to user requests; and a management module that determines what documents may be served by the client messaging module, wherein the client messaging module responds to changes in the management module according to a predetermined schedule, if the document server instance is ill, the client messaging module prevents further writes to the documents, and if the document server instance is ill for a predetermined period of time, the document server instance shuts itself down and exits, and one or more repositories for persisting document data from the one or more document server instances. - View Dependent Claims (16, 17, 18, 19)
Specification