Systems and methods for caching of managed content in a distributed environment using a multi-tiered architecture including off-line access to cached content
First Claim
Patent Images
1. A system for remote caching, comprising:
- a processor;
a primary content management server for managing content;
a remote cache system, including;
a cache;
an interface to a network;
a data store for storing metadata corresponding to content stored in the cache, wherein the content in cache is managed by the primary content management server; and
a remote client transfer module, configured for;
accessing the data store to determine if first metadata associated with designated content is stored in the data store;
sending a first request to a primary content transfer module associated with the primary content management server;
receiving a first response from the primary content transfer module including second metadata;
if first metadata associated with the designated content is stored in the data store;
comparing the first metadata to the second metadata to determine if a version of the content stored in the cache is a current version of the content;
if the version of the content stored in the cache is a current version, setting a flag in the first metadata to designate the content as resident;
if the version of the content stored in the cache is not the current version or if no first metadata associated with the designated content is stored in the data store;
sending a second request for the current version of the content to the primary content transfer module;
receiving the current version of the content;
storing the current version of the content in the cache; and
setting a flag in the first metadata to designate the content as resident;
the primary content transfer module configured for;
receiving the first request associated with the content from the remote client transfer module;
sending a third request to the primary content management server for the second metadata associated with the content;
returning the first response, including the second metadata to the remote client transfer module;
receiving the second request for the current version of the content;
obtaining the current version of the content from the content management platform;
returning the current version of the content to the remote client transfer module; and
wherein the remote client transfer module is further configured for;
receiving a fourth request to access the content, wherein the fourth request is associated with a user;
determining that the primary content transfer module is inaccessible over the network;
accessing the data store to determine that the requested content is in the cache; and
providing the content in the cache in response to the fourth request.
3 Assignments
0 Petitions
Accused Products
Abstract
Embodiments as disclosed provide a distributed caching solution that improve the performance and functionality of a content management platform for sites that are physically or logically remote from the primary site of the content management platform. In particular, according to embodiments, a remote cache server may be associated with a remote site to store local copies of documents that are managed by the primary content management platform. Periodically, a portion of the remote site'"'"'s cache may be synchronized with the content management platform'"'"'s primary site using an extensible architecture to ensure that content at the remote cache server is current.
-
Citations
18 Claims
-
1. A system for remote caching, comprising:
-
a processor; a primary content management server for managing content; a remote cache system, including; a cache; an interface to a network; a data store for storing metadata corresponding to content stored in the cache, wherein the content in cache is managed by the primary content management server; and a remote client transfer module, configured for; accessing the data store to determine if first metadata associated with designated content is stored in the data store; sending a first request to a primary content transfer module associated with the primary content management server; receiving a first response from the primary content transfer module including second metadata; if first metadata associated with the designated content is stored in the data store; comparing the first metadata to the second metadata to determine if a version of the content stored in the cache is a current version of the content; if the version of the content stored in the cache is a current version, setting a flag in the first metadata to designate the content as resident; if the version of the content stored in the cache is not the current version or if no first metadata associated with the designated content is stored in the data store; sending a second request for the current version of the content to the primary content transfer module; receiving the current version of the content; storing the current version of the content in the cache; and setting a flag in the first metadata to designate the content as resident; the primary content transfer module configured for;
receiving the first request associated with the content from the remote client transfer module;
sending a third request to the primary content management server for the second metadata associated with the content;
returning the first response, including the second metadata to the remote client transfer module;
receiving the second request for the current version of the content;
obtaining the current version of the content from the content management platform;
returning the current version of the content to the remote client transfer module; and
wherein the remote client transfer module is further configured for;
receiving a fourth request to access the content, wherein the fourth request is associated with a user;
determining that the primary content transfer module is inaccessible over the network;
accessing the data store to determine that the requested content is in the cache; and
providing the content in the cache in response to the fourth request. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for remote caching, comprising:
-
accessing, at a remote client transfer module, a data store of a remote cache system including a cache and the data store to determine if first metadata associated with designated content is stored in the data store, wherein the data store is for storing metadata corresponding to content stored in the cache and the content in the cache is managed by a primary content management server; sending a first request to a primary content transfer module associated with the primary content management server; receiving a first response from the primary content transfer module including second metadata; if first metadata associated with the designated content is stored in the data store; comparing the first metadata to the second metadata to determine if a version of the content stored in the cache is a current version of the content; if the version of the content stored in the cache is a current version, setting a flag in the first metadata to designate the content as resident; if the version of the content stored in the cache is not the current version or if no first metadata associated with the designated content is stored in the data store; sending a second request for the current version of the content to the primary content transfer module; receiving the current version of the content; storing the current version of the content in the cache; and setting a flag in the first metadata to designate the content as resident; receiving, at the primary content transfer module, the first request associated with the content from the remote client transfer module; sending a third request to the primary content management server for the second metadata associated with the content; returning the first response, including the second metadata to the remote client transfer module; receiving the second request for the current version of the content; obtaining the current version of the content from the content management platform; returning the current version of the content to the remote client transfer module; and at the remote client transfer module; receiving a fourth request to access the content, wherein the fourth request is associated with a user; determining that the primary content transfer module is inaccessible over the network; accessing the data store to determine that the requested content is in the cache; and providing the content in the cache in response to the fourth request. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A non-transitory computer readable medium, comprising instruction for implementing remote caching in a system including a primary content management server for managing content, a remote cache system including a cache and a data store for storing metadata corresponding to content stored in the cache, where the content in cache is managed by the primary content management server, the instruction translatable to implement a remote client transfer module and a primary content transfer module, and
at a remote client transfer module: -
accessing the data store to determine if first metadata associated with designated content is stored in the data store; sending a first request to a primary content transfer module associated with the primary content management server; receiving a first response from the primary content transfer module including second metadata; if first metadata associated with the designated content is stored in the data store; comparing the first metadata to the second metadata to determine if a version of the content stored in the cache is a current version of the content; if the version of the content stored in the cache is a current version, setting a flag in the first metadata to designate the content as resident; if the version of the content stored in the cache is not the current version or if no first metadata associated with the designated content is stored in the data store; sending a second request for the current version of the content to the primary content transfer module; receiving the current version of the content; storing the current version of the content in the cache; and setting a flag in the first metadata to designate the content as resident; at the primary content transfer module; receiving the first request associated with the content from the remote client transfer module; sending a third request to the primary content management server for the second metadata associated with the content; returning the first response, including the second metadata to the remote client transfer module; receiving the second request for the current version of the content; obtaining the current version of the content from the content management platform; returning the current version of the content to the remote client transfer module; and at the remote client transfer module; receiving a fourth request to access the content, wherein the fourth request is associated with a user; determining that the primary content transfer module is inaccessible over the network; accessing the data store to determine that the requested content is in the cache; and providing the content in the cache in response to the fourth request. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification