Optimizing browser caching through deterministic marking of files
First Claim
Patent Images
1. A method executed at least in part by a computing device for optimizing browser caching, the method comprising:
- generating a file identifier for a cacheable file that includes a file identifier attribute at a first server executing a web application configured to provide structured and unstructured data to client applications;
receiving a request that includes the cacheable file at the first server;
retrieving the cacheable file from a second server;
providing the cacheable file to a requesting client along with one or more non-cacheable files if requested by the client;
modifying the file identifier attribute in response to detecting a change associated with the cacheable file;
in response to receiving another request, providing the cacheable file associated with the modified identifier attribute if the content indicated by the identifier exists such that the provided cacheable file with the modified identifier attribute replaces an out-of-date un-modified cacheable file;
in response to receiving a request to receive an un-modified cacheable file, providing the cacheable file with the un-modified identifier attribute;
in response to receiving a request to receive an un-locatable cacheable file, providing a file-not-found exception in response; and
maintaining at least another version of the cacheable file and providing the at least other version of the cacheable file to another requesting client using the other version.
2 Assignments
0 Petitions
Accused Products
Abstract
Enhanced browser caching is provided through a file identifier attribute employed at a front end server level for deterministic marking A front end server may use an attribute of a file identifier such as an attached parameter, a pattern, a directory associated with the file, or similar attributes to change the links it emits into other content in order to prompt the browsers to request new files. The attribute may be changed (e.g. incremented) based on a web change associated with the content being served.
-
Citations
20 Claims
-
1. A method executed at least in part by a computing device for optimizing browser caching, the method comprising:
-
generating a file identifier for a cacheable file that includes a file identifier attribute at a first server executing a web application configured to provide structured and unstructured data to client applications; receiving a request that includes the cacheable file at the first server; retrieving the cacheable file from a second server; providing the cacheable file to a requesting client along with one or more non-cacheable files if requested by the client; modifying the file identifier attribute in response to detecting a change associated with the cacheable file; in response to receiving another request, providing the cacheable file associated with the modified identifier attribute if the content indicated by the identifier exists such that the provided cacheable file with the modified identifier attribute replaces an out-of-date un-modified cacheable file; in response to receiving a request to receive an un-modified cacheable file, providing the cacheable file with the un-modified identifier attribute; in response to receiving a request to receive an un-locatable cacheable file, providing a file-not-found exception in response; and maintaining at least another version of the cacheable file and providing the at least other version of the cacheable file to another requesting client using the other version. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system to provide a web service with optimized browser caching, the system comprising:
a first computing device comprising; a memory configured to store instructions; and a processor coupled to the memory, the processor configured to; generate an identifier for cacheable content that includes an identifier attribute at a cacheable data module executed on a web application, the web application configured to provide structured and unstructured data to client applications; receive a request that includes the cacheable content; retrieve the cacheable content from one or more content stores; provide the cacheable content to a requesting client, wherein the cacheable content is marked to be cached at the requesting client for subsequent use; provide non-cacheable content if requested by the client; identify the cacheable content transparently to the requesting client using a caching mechanism based on metadata of the cacheable content; if a web setting change associated with the cacheable content is detected, modify the identifier attribute at the cacheable data module; and in response to receiving another request that includes the identifier for the cacheable content, provide cacheable content associated with the modified identifier attribute if the content indicated by the identifier exists at the cacheable data module such that the provided cacheable file with the modified identifier attribute replaces an out-of-date un-modified cacheable file. - View Dependent Claims (12, 13, 14, 15, 16)
-
17. A computer-readable storage medium with instructions stored thereon for optimizing browser caching, the instructions comprising:
-
generating a Uniform Resource Locator (URL) link with a URL attribute for cacheable content at a web server executing a web application that provides structured and unstructured data to client applications including at least one of;
documents and formatting files;receiving a request for a web page that includes the cacheable content at the web server; retrieving the cacheable content from a back end server; providing the cacheable content along with additional web page content and non-cacheable content to a requesting browser; identifying the cacheable content transparently to the requesting browser using a caching mechanism based on metadata of the cacheable content at a cacheable data module; modifying the URL attribute in response to detecting a web setting change associated with the cacheable content at the cacheable data module; generating a new URL link with the modified URL attribute; and in response to receiving another request for the web page from the requesting browser; determining that the new URL link is to be provided with the web page; serving the new URL link along with other content associated with the requested web page; and maintaining at least another version of the cacheable content and providing the at least other version of the cacheable content to another requesting browser using the other version; in response to receiving a request to receive un-modified cacheable content, providing the cacheable content with the un-modified identifier attribute; and in response to receiving a request to receive un-locatable cacheable content, providing a file-not-found exception in response. - View Dependent Claims (18, 19, 20)
-
Specification