Methods and systems for partial page caching of dynamically generated content
First Claim
1. A method of servicing a request for a document over a computer network, comprising the steps of:
- receiving a request for a document, the requested document including a script that defines plurality of blocks, each block including a reference to a data source and code that is adapted to access the data source and to format the data accessed from the data source;
retrieving only some of the plurality of blocks defined in the script of the requested document from a memory, the memory storing the at least one of the plurality of blocks defined in the script of the requested document;
dynamically generating remaining blocks of the plurality of blocks defined in the script of the requested document that were not retrieved from the memory, that are not stored in the memory or that are stored in the memory but have been invalidated and storing a copy of each dynamically generated block in the memory;
assembling the requested document from both the retrieved and dynamically generated blocks, andsending the assembled document over the computer network to an originator of the request.
3 Assignments
0 Petitions
Accused Products
Abstract
A method of servicing a request for a document over a computer network includes independently caching portions of pages called blocks. Each block includes a reference to a data source and code that is adapted to access the data source and to format the data accessed from the data source. When a request for a page is received over a computer network, one or more of the plurality of blocks defined in the script of the requested document may be retrieved from a cache memory. Any block that is not found in the cache memory is dynamically generated and a copy thereof is stored in the cache memory. The requested page may then be assembled from the page blocks retrieved from the cache memory and/or the dynamically generated page blocks.
-
Citations
52 Claims
-
1. A method of servicing a request for a document over a computer network, comprising the steps of:
-
receiving a request for a document, the requested document including a script that defines plurality of blocks, each block including a reference to a data source and code that is adapted to access the data source and to format the data accessed from the data source; retrieving only some of the plurality of blocks defined in the script of the requested document from a memory, the memory storing the at least one of the plurality of blocks defined in the script of the requested document; dynamically generating remaining blocks of the plurality of blocks defined in the script of the requested document that were not retrieved from the memory, that are not stored in the memory or that are stored in the memory but have been invalidated and storing a copy of each dynamically generated block in the memory; assembling the requested document from both the retrieved and dynamically generated blocks, and sending the assembled document over the computer network to an originator of the request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer system for servicing a request for a document over a computer network, comprising:
-
at least one processor; at least one data storage device; a plurality of processes spawned by said at least one processor, the processes including processing logic for; receiving a request for a document, the requested document including a script that defines plurality of blocks, each block including a reference to a data source and code that is adapted to access the data source and to format the data accessed from the data source; retrieving only some of the plurality of blocks defined in the script of the requested document from a memory, the memory storing the at least one of the plurality of blocks defined in the script of the requested document; dynamically generating remaining blocks of the plurality of blocks defined in the script of the requested document that were not retrieved from the memory, that are not stored in the memory or that are stored in the memory but have been invalidated and storing a copy of each dynamically generated block in the memory; assembling the requested document from both the retrieved and dynamically generated blocks, and sending the assembled document over the computer network to an originator of the request. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A machine-readable storage medium having data stored thereon representing sequences of instructions which, when executed by computing device, causes said computing device to service a request for a document over a computer network, by performing the steps of:
-
receiving a request for a document, the requested document including a script that defines plurality of blocks, each block including a reference to a data source and code that is adapted to access the data source and to format the data accessed from the data source; retrieving only some of the plurality of blocks defined in the script of the requested document from a memory, the memory storing the at least one of the plurality of blocks defined in the script of the requested document; dynamically generating remaining blocks of the plurality of blocks defined in the script of the requested document that were not retrieved from the memory, that are not stored in the memory or that are stored in the memory but have been invalidated and storing a copy of each dynamically generated block in the memory; assembling the requested document from both the retrieved and dynamically generated blocks, and sending the assembled document over the computer network to an originator of the request. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A method of servicing a request for a Web page over a computer network, comprising the steps of:
-
identifying constituent blocks of the Web page, each of the constituent blocks including a portion of the Web page; defining a caching property for each identified block, the caching property defining when each identified block is to be invalidated; caching the identified blocks in a memory; maintaining each of the cached blocks in the memory according to the defined caching property defined for each block; servicing the request for the Web page by retrieving only some of the cached blocks of the requested Web page from the memory and dynamically generating remaining blocks of the constituent blocks of the requested Web page that were not retrieved from the memory, that are not stored in the memory or that are stored in the memory but have been invalidated and storing a copy of each dynamically generated block in the memory; assembling the Web page from both the retrieved and dynamically generated blocks, and sending the assembled Web page over the computer network. - View Dependent Claims (50, 51, 52)
-
Specification