Method and system for fragment linking and fragment caching
First Claim
1. A method for processing objects at a data processing system in a network, the method comprising processing logic used for:
- receiving a message at a computing device;
determining that a message header in the message indicates that the message relates to a fragment and that the fragment is cacheable, wherein the message header comprises no-cache directive data for not caching the fragment for non-fragment-supporting cache management units and caching directive data for caching the fragment for fragment-supporting cache management units;
determining whether a cache management unit is a non-fragment-supporting cache management unit or a fragment-supporting cache management unit;
processing the no-cache directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit;
processing the caching directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit;
retrieving a set of dependency identifiers from the message, wherein a dependency identifier is generated by a server that originated the fragment;
storing the set of dependency identifiers in association with a source identifier for the fragment;
receiving an invalidation request message;
retrieving a dependency identifier from the invalidation request message;
determining a set of fragments that are associated with the dependency identifier; and
purging the set of fragments from the cache in response to determining the set of fragments that are associated with the dependency identifier.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, a system, an apparatus, and a computer program product are presented for fragment caching. After a message is received at a computing device that contains a cache management unit, a fragment in the message body of the message is cached. Subsequent requests for the fragment at the cache management unit result in a cache hit. The cache management unit operates equivalently in support of fragment caching operations without regard to whether the computing device acts as a client, a server, or a hub located throughout the network; in other words, the fragment caching technique is uniform throughout a network. Cache ID rules accompany a fragment from an origin server; the cache ID rules describe a method for forming a unique cache ID for the fragment such that dynamic content can be cached away from an origin server.
-
Citations
24 Claims
-
1. A method for processing objects at a data processing system in a network, the method comprising processing logic used for:
-
receiving a message at a computing device; determining that a message header in the message indicates that the message relates to a fragment and that the fragment is cacheable, wherein the message header comprises no-cache directive data for not caching the fragment for non-fragment-supporting cache management units and caching directive data for caching the fragment for fragment-supporting cache management units; determining whether a cache management unit is a non-fragment-supporting cache management unit or a fragment-supporting cache management unit; processing the no-cache directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit; processing the caching directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit; retrieving a set of dependency identifiers from the message, wherein a dependency identifier is generated by a server that originated the fragment; storing the set of dependency identifiers in association with a source identifier for the fragment; receiving an invalidation request message; retrieving a dependency identifier from the invalidation request message; determining a set of fragments that are associated with the dependency identifier; and purging the set of fragments from the cache in response to determining the set of fragments that are associated with the dependency identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An apparatus for processing objects at a data processing system in a network, the apparatus comprising:
-
means for receiving a message at a computing device; means for determining that a message header in the message indicates that the message relates to a fragment and that the fragment is cacheable, wherein the message header comprises no-cache directive data for not caching the fragment for non-fragment-supporting cache management units and caching directive data for caching the fragment for fragment-supporting cache management units; means for determining whether a cache management unit is a non-fragment-supporting cache management unit or a fragment-supporting cache management unit; means for processing the no-cache directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit; means for processing the caching directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit; means for retrieving a set of dependency identifiers from the message, wherein a dependency identifier is generated by a server that originated the fragment; means for storing the set of dependency identifiers in association with a source identifier for the fragment; means for receiving an invalidation request message;
means for retrieving a dependency identifier from the invalidation request message;means for determining a set of fragments that are associated with the dependency identifier; and means for purging the set of fragments from the cache in response to determining the set of fragments that are associated with the dependency identifier. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer program product in a computer readable storage medium for use in a data processing system in a network for processing objects, the computer program product comprising:
-
instructions for receiving a message at a computing device; and instructions for determining that a message header in the message indicates that the message relates to a fragment and that the fragment is cacheable, wherein the message header comprises no-cache directive data for not caching the fragment for non-fragment-supporting cache management units and caching directive data for caching the fragment for fragment-supporting cache management units; instructions for determining whether a cache management unit is a non-fragment-supporting cache management unit or a fragment-supporting cache management unit; instructions for processing the no-cache directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit; and instructions for processing the caching directive data to generate a no-cache instruction to a non-fragment-supporting cache management unit; instructions for retrieving a set of dependency identifiers from the message, wherein a dependency identifier is generated by a server that originated the fragment; instructions for storing the set of dependency identifiers in association with a source identifier for the fragment; instructions for receiving an invalidation request message; instructions for retrieving a dependency identifier from the invalidation request message; instructions for determining a set of fragments that are associated with the dependency identifier; and instructions for purging the set of fragments from the cache in response to determining the set of fragments that are associated with the dependency identifier. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification