US9846649B1ActiveUtility

Providing files with cacheable portions

Assignee: AMAZON TECH INCPriority: Feb 25, 2011Filed: Jul 1, 2015Granted: Dec 19, 2017
Est. expiryFeb 25, 2031(~4.6 yrs left)· nominal 20-yr term from priority
G06F 2212/452G06F 12/0875H04L 67/2842G06F 16/9574G06F 12/0862H04L 67/568
77
PatentIndex Score
2
Cited by
11
References
19
Claims

Abstract

Systems and methods are provided for enabling caching of one or more portions of a file. In some embodiments, a first file may be sent to a client system, where the first file includes a cache identifier identifying a shared portion of content of the first file, where the shared portion of content is included in both the first file and at least one other file. A request may be received from the client system for a second file that includes the shared portion of content. A modified second page may then be sent to the client system, where the modified second page includes the cache identifier, and does not include the shared portion of content, such that the client system may determine the content of the second page based on the modified second page and the previously stored shared portion of content.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A system comprising:
 an electronic data store configured to store cached data; 
 a computing system comprising one or more hardware computing devices executing specific computer-executable instructions, said computing system in communication with the electronic data store, and configured to at least:
 receive a first page from a server; 
 identify a shared portion of content within the first page, wherein the shared portion of content is identified based at least in part by a cache identifier and associated tags that are each included within the first page, wherein the shared portion of content is identified as inline displayable text appearing between a first tag and a second tag within the first page, wherein the shared portion of content is also included within at least one page other than the first page that is also accessible to the computing system via the server, wherein the shared portion of content is included in full within the first page and is less than the entire displayable text within the first page, wherein the first tag within the first page includes expiration information associated with the shared portion of content and further includes an indication of a first action to save the shared portion of content; 
 store, in the electronic data store, the shared portion of content and the cache identifier that identifies the shared portion of content, wherein the shared portion of content is extracted from the first page by the computing system without sending a request for the shared portion of content to the server, wherein less than the entire content of the first page is stored in the electronic data store; 
 receive, from the server, a second page that includes the cache identifier within the second page and further includes an indication of a second action to retrieve the shared portion of content, wherein the second page does not include the shared portion of content; 
 based at least in part on determinations that (a) the second page includes the cache identifier and (b) the cache identifier is stored in the electronic data store, retrieve the shared portion of content from the electronic data store; and 
 create a modified second page, wherein creating the modified second page comprises adding the retrieved shared portion of content to the second page at a location corresponding to a location of the cache identifier within the second page. 
 
 
     
     
       2. The system of  claim 1 , wherein the computing system is further configured to present the modified second page for display, wherein presenting the modified second page for display includes presenting the shared portion of content retrieved from the electronic data store. 
     
     
       3. The system of  claim 1 , wherein the inclusion of the cache identifier within the first page indicates to the computing system that the shared portion within the first page may be stored separately from other portions of the first page. 
     
     
       4. The system of  claim 1 , wherein portions of content within the first page other than the shared portion are not stored in the electronic data store based at least in part on a determination that the portions are not associated with any cache identifier. 
     
     
       5. A computer-implemented method comprising:
 receiving, by a client computing device, a first page from a server; 
 identifying a shared portion of content within the first page, wherein the shared portion of content comprises at least one of text within the first page or code within the first page, wherein the shared portion of content is identified based at least in part by a cache identifier and associated tags that are included within the first page, wherein the shared portion of content is identified as at least one of text or code appearing between a first tag and a second tag within the first page, wherein the shared portion of content is also included within at least one page other than the first page that is also accessible to the client computing device via the server, wherein the first tag within the first page includes expiration information associated with the shared portion of content and further includes an indication of a first action to save the shared portion of content; 
 electronically storing, in a data store of the client computing device that is configured to store cached content, the shared portion of content and the cache identifier that identifies the shared portion of content, wherein the shared portion of content is extracted from the first page by the client computing device without sending a request for the shared portion of content to the server; 
 receiving, by the client computing device, a second page that includes the cache identifier within the second page and further includes an indication of a second action to retrieve the shared portion of content, wherein the second page does not include the shared portion of content; and 
 based at least in part on a determination that the second page includes the cache identifier,
 retrieving the shared portion of content from the data store; and 
 creating a modified second page, wherein creating the modified second page comprises adding the retrieved shared portion of content to the second page at a location corresponding to a location of the cache identifier within the second page. 
 
 
     
     
       6. The computer-implemented method of  claim 5 , further comprising, subsequent to electronically storing the shared portion of content, sending an indication to the server that the client computing device has stored the shared portion of content associated with the cache identifier. 
     
     
       7. The computer-implemented method of  claim 6 , wherein the server does not include the shared portion of content in the second page sent to the client computing device based at least in part on the indication that the client computing device has stored the shared portion of content. 
     
     
       8. The computer-implemented method of  claim 5 , further comprising presenting the modified second page for display, wherein presenting the modified second page for display includes presenting the shared portion of content retrieved from the data store. 
     
     
       9. The computer-implemented method of  claim 5 , wherein the first page includes both text to be interpreted by a browser and text to be displayed. 
     
     
       10. The computer-implemented method of  claim 5 , wherein the client computing device is caused to store the shared portion as a result of executing code included within the first page. 
     
     
       11. The computer-implemented method of  claim 5 , further comprising storing, in the electronic data store, at least one of an expiration day or an expiration time associated with the shared portion of content. 
     
     
       12. A non-transitory, computer-readable medium storing computer executable instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations comprising:
 receiving from a server a first file, wherein the first file includes a cache identifier; 
 identifying a shared portion of content of the first file, wherein the shared portion of content is identified as content appearing between a first tag and a second tag within the first file, wherein the shared portion of content is included in full within the first file and is less than the entire content of the first file, wherein the shared portion of content is also included within at least one file other than the first file that is also accessible via the server, wherein the first tag within the first file includes (a) the cache identifier, (b) expiration information associated with the shared portion of content and (c) an indication of a first action to save the shared portion of content; 
 storing, in a data store, the shared portion of content of the first file and the cache identifier associated with the shared portion of content, wherein the shared portion of content is extracted from the first file without sending a request for the shared portion of content to the server; 
 receiving from the server a second file, wherein the second file includes the cache identifier and does not include the shared portion of content, wherein the second file further includes an indication of a second action to retrieve the shared portion of content; and 
 in response to identifying the cache identifier within the second file,
 retrieving from the data store the shared portion of content associated with the cache identifier; and 
 adding the retrieved shared portion of content to the second file. 
 
 
     
     
       13. The non-transitory, computer-readable medium of  claim 12 , wherein the computer executable instructions are associated with a browser plug-in installed on a client computing device. 
     
     
       14. The non-transitory, computer-readable medium of  claim 12 , wherein the operations further comprise causing display of a user interface comprising at least a portion of the second file, wherein the user interface includes the retrieved shared portion of content. 
     
     
       15. The non-transitory, computer-readable medium of  claim 12 , wherein the shared portion of content comprises code. 
     
     
       16. The non-transitory, computer-readable medium of  claim 12 , wherein the shared portion of content comprises at least one of text data, audio data or video data. 
     
     
       17. The non-transitory, computer-readable medium of  claim 12 , wherein the first tag further identifies an expiration associated with the shared portion. 
     
     
       18. The non-transitory, computer-readable medium of  claim 12 , wherein the first file is a page comprising text. 
     
     
       19. The non-transitory, computer-readable medium of  claim 12 , wherein the first file is a video file.

Join the waitlist — get patent alerts

Track US9846649B1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.