Dynamically generated document cache system
First Claim
1. A method of caching a dynamically generated document at an intermediate server comprising:
- receiving from the client, at the intermediate server, a request for a document located at a content providing server;
transmitting the request from the intermediate server to the content providing server;
obtaining instructions and data for the document at the content providing server;
receiving the instructions and the data for the document from the content providing server;
storing the instructions and the data at the intermediate server;
creating the document at the intermediate server; and
transmitting the document from the intermediate server to the client.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for dynamically generating documents utilizes document programs and data at a content providing server to generate those documents. When an intermediate server requests a dynamically generated document from a content providing server, the content providing server transmits the instructions or programs to create the document along with data utilized by the program or instructions in creating the document. The intermediate server then retains or caches the document programs as well as the data. When the intermediate server next requires the document, that document is generated at the intermediate server rather than requiring that it be obtained from the content providing server. The content providing server retains a register of the intermediate servers which have received document programs or data. If there are changes to the document programs or data, such changes are broadcast to the intermediate servers which had cached that information.
79 Citations
22 Claims
-
1. A method of caching a dynamically generated document at an intermediate server comprising:
-
receiving from the client, at the intermediate server, a request for a document located at a content providing server;
transmitting the request from the intermediate server to the content providing server;
obtaining instructions and data for the document at the content providing server;
receiving the instructions and the data for the document from the content providing server;
storing the instructions and the data at the intermediate server;
creating the document at the intermediate server; and
transmitting the document from the intermediate server to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
receiving a second request for the document at the intermediate server;
carrying out the instructions at the intermediate server, utilizing the data to create the document; and
transmitting the document to a client.
-
-
9. The method of claim 1 wherein, a database manager notifies the content providing server when a database containing the data is being altered.
-
10. An apparatus for caching a dynamically generated document at an intermediate server comprising:
-
server software for receiving from a client, at the intermediate server, a request for a document located at a content providing server and for transmitting the document from the intermediate server to the client;
caching software for transmitting the request from the intermediate server to the content providing server and for receiving instructions and data for dynamically generating the document from the content providing server at the intermediate server; and
a cache for storing t he instructions and data at the intermediate server.
-
-
11. A method of dynamically generating a document at an intermediate server comprising:
-
receiving, from a client, at the intermediate server, a request for a document located at a content providing server, wherein the document can be generated from an instruction set utilizing a data set;
transmitting the request from the intermediate server to the content providing server;
transmitting the instruction set from the content providing server to the intermediate server;
reviewing the instruction set to determine if the intermediate server has the data set;
obtaining the data set at the intermediate server if the intermediate server does not already have the data set; and
creating the document at the intermediate server and transmitting the document to the client. - View Dependent Claims (12, 13, 14, 15, 16, 17, 19, 20)
retaining the instruction set and the data set at the intermediate server;
receiving a second request for the document at the intermediate server;
creating the document utilizing the instruction set and the data set at the intermediate server; and
transmitting the document.
-
-
13. The method of claim 12 comprising, after receiving the second request, determining if the data set retained at the intermediate server is current.
-
14. The method of claim 12 wherein the content providing server notifies the intermediate server if the data set is changed.
-
15. The method of claim 11 comprising, determining if the data set is current, if the intermediate server has the data set.
-
16. The method of claim 11 wherein the intermediate server is located remote from the content providing server.
-
17. The method of claim 11 wherein the instructions are a CGI program.
-
19. The method of claim 11 wherein:
-
a first portion of the data set is located at the content providing server; and
a second portion of the data set is located at a third server.
-
-
20. The method of claim 19 wherein the first portion of data is retained by the intermediate server.
-
18. An apparatus for dynamically generating a document at an intermediate server comprising:
-
server software at the intermediate server for receiving from a client a request for a document located at a content providing server, wherein the document can be generated from an instruction set utilizing a data set, for creating the document, and for transmitting the document from the intermediate server to the client; and
caching software at the intermediate server for transmitting the request from the intermediate server to the content providing server, for receiving the instruction set from the content providing server, and for receiving the data set if the intermediate server does not already have the data set.
-
-
21. A method of caching a dynamically generated document at an intermediate server comprising:
-
receiving a first request from a first client for a document located at a content providing server, wherein the document can be generated from an instruction set utilizing a data set;
transmitting the request from the intermediate server to the content providing server;
receiving the instruction set from the content providing server;
receiving a first data set from the content providing server;
transmitting the instruction set and the first data set for the document from the intermediate server to the first client;
receiving a second request from a second client for the document;
determining if the first data set is current;
transmitting the instruction set and the first data set for the document from the intermediate server to the second client if the first data set is current;
retrieving a second data set if the first data set is not current; and
transmitting the instruction set and the second data set for the document from the intermediate server to the second client if the first data set is not current. - View Dependent Claims (22)
-
Specification