Browser optimization through user history analysis
US-9456050-B1 · Sep 27, 2016 · US
US9912718B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9912718-B1 |
| Application number | US-201213371374-A |
| Country | US |
| Kind code | B1 |
| Filing date | Feb 10, 2012 |
| Priority date | Apr 11, 2011 |
| Publication date | Mar 6, 2018 |
| Grant date | Mar 6, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present invention relates to systems, apparatus, and methods of using usage data to determine the dependency structures of a web application, including dependency structures between follow-on objects of an initial object in a web transaction. In one embodiment, an input URL and associated dynamic response data are analyzed for such nested or dependent relationships. In further embodiments, analysis of these relationships are used to improve prefetching operations to lower overall page load times.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving transaction feedback information for a first web page transaction for a first web page, the first web page transaction comprising a first root request for a first root object, and resulting therefrom a plurality of child requests for a plurality of child objects; determining based on the transaction feedback information: an overall load time of the first web page, a timing for completion of the first root request, and a timing for completion of a first child request of the plurality of child requests requesting a first child object of the plurality of child objects; calculating, utilizing the timing for completion of the first root request and the timing for completion of the first child request, an expected change in the overall load time of the first web page from caching the first child object; and adjusting a caching priority for the first child object based on the expected change in the overall load time of the first web page, wherein adjusting the caching priority comprises lowering a caching priority for a low priority object of the first web page transaction based on a determination that the low priority object does not impact the expected change in the overall load time, and wherein adjusting caching priority comprises increasing a caching priority for a high priority object of the first web page transaction based on a determination that the high priority object increases the expected change in the overall load time. 2. The method of claim 1 , wherein the expected change in the overall load time of the first web page is a time saved per byte of cache used over a caching period. 3. The method of claim 1 further comprising: identifying a parameter from a response to first child request that is used to create a second child request; communicating the parameter to a content server; and modifying, using the content server, at least one object of the first web page such that a set of object timings for the first web page transaction are optimized to shorten the expected change in the overall load time. 4. The method of claim 2 wherein the caching period comprises a freshness period specified by a content owner. 5. The method of claim 1 wherein the expected change in the overall load time of the first web page is further based on an expected second web page transaction, the expected second web page transaction requesting a second web page different from the first web page, the second web page including the first child object. 6. The method of claim 1 wherein the expected change in the overall load time of the first web page is based on an expected change in the overall load time of the first web page for a group of users. 7. The method of claim 1 , wherein the transaction feedback information comprises object interdependency information associated with the first web page. 8. A computing device comprising: a processor; a network connection communicatively coupled to a client computer and a content server computer; and a computer-readable storage medium having instructions stored thereon for causing the processor to execute a cache optimizer, the cache optimizer configured to: receive transaction feedback information for a portion of a first web page transaction for a first web page, the first web page transaction comprising a first root request for a first root object from the client computer to the content server computer, and resulting therefrom a plurality of child requests for a plurality of child objects; determine based on the transaction feedback information: an overall load time of the first web page, a timing for completion of the first root request, and a timing for completion of a first child request of the plurality of child requests requesting a first child object of the plurality of child objects; calculate, utilizing the timing for completion of the first root request and the timing for completion of the first child request, an expected change in the overall load time of the first web page from caching the first child object; and adjust a caching priority for the first child object based on the expected change in the overall load time of the first web page, wherein adjusting the caching priority comprises lowering a caching priority for a low priority object of the first webpage transaction based on a determination that the low priority object does not impact the expected change in the overall load time, and wherein adjusting caching priority comprises increasing a caching priority for a high priority object of the first web page transaction based on a determination that the high priority object increases the expected change in the overall load time. 9. The computing device of claim 8 wherein the caching priority is for a local cache on a user computer that is different from the computing device. 10. The computing device of claim 8 wherein the caching priority is a caching priority for a cache on a dynamic CDN. 11. The computing device of claim 8 further comprising communicating the transaction feedback information from the computing device to a prefetch analysis server, wherein the calculating the expected change in the overall load time of the first web page is performed on the prefetch analysis server. 12. The computing device of claim 8 wherein the expected change in the overall load time of the first web page comprises a first impact associated with a single user and a second impact associated with a group of users. 13. The computing device of claim 8 wherein the expected change in the overall load time of the first web page is a time saved per byte of cache used over a caching period. 14. The computing device of claim 13 wherein the caching period is a freshness period specified by a content owner. 15. The computing device of claim 8 wherein the expected change in the overall load time of the first web page is based on multiple expected future page loads for at least two separate web pages that use the child object; and wherein the multiple expected future page loads are determined using a page load history for the at least two separate web pages. 16. The computing device of claim 8 wherein the expected change in the overall load time of the first web page is a time saved value calculated by determining a difference between a first expected page load time and a second expected page load time. 17. The computing device of claim 8 , further comprising a browser accelerator, the browser accelerator configured to: observe the at least the portion of the first web page transaction; and determine and provide the transaction feedback information to the cache optimizer based on the observed portion of the first web page transaction. 18. The computing device of claim 17 , further comprising a prefetch analyzer, the prefetch analyzer configured to provide hint information to the browser accelerator, and wherein the browser accelerator is further configured to determine the transaction feedback information further based on the hint information.
URL specific, e.g. using aliases, detecting broken or misspelled links · CPC title
Protocols · CPC title
based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title
of access to content, e.g. by caching · CPC title
Storing data temporarily at an intermediate stage, e.g. caching · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.