HTML streaming

US2016205166A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016205166-A1
Application numberUS-201514998075-A
CountryUS
Kind codeA1
Filing dateDec 23, 2015
Priority dateJan 8, 2015
Publication dateJul 14, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of speeding up the delivery of a dynamic webpage is disclosed. A request for a webpage is received, the webpage including one or more dynamic components. A cached stub is sent in response to the request, the cached stub including common components of the webpage that were empirically determined to be common components across multiple requests for the webpage. The request for the webpage is forwarded to an origin server. The webpage is received from the origin server. A difference between the cached stub and the webpage received from the origin server is determined. An instruction to correct the difference between the cached stub and the webpage received from the origin server is sent.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of speeding up the delivery of a dynamic webpage, comprising: receiving a request for a webpage, the webpage including one or more dynamic components; sending a cached stub in response to the request, the cached stub including common components of the webpage that were empirically determined to be common components across multiple requests for the webpage; forwarding the request for the webpage to an origin server; receiving the webpage from the origin server; determining a difference between the cached stub and the webpage received from the origin server; and sending an instruction to correct the difference between the cached stub and the webpage received from the origin server. 2 . The method of claim 1 , wherein empirically determining the common components of the webpage comprises excluding user-specific information from the common components. 3 . The method of claim 1 , further comprising: excluding a first script component from being included in the cached stub, wherein the first script component was empirically determined to be common across multiple requests for the webpage, and wherein the first script component is preceded by a second script component that was empirically determined to be uncommon across multiple requests for the webpage. 4 . The method of claim 1 , further comprising: determining that the webpage received from the origin server includes a new component inserted in the webpage, wherein the new component was not included in the cached stub; determining that inserting the new component in the cached stub would have resulted in the new component being inserted before at least one script component in the cached stub; and configuring the instruction to cause a reloading of the webpage. 5 . The method of claim 1 , further comprising: determining that the webpage received from the origin server includes a new component inserted at a position in the webpage, wherein the new component was not included in the cached stub; determining that inserting the new component in the cached stub would not have resulted in the new component being inserted before at least one script component in the cached stub; and configuring the instruction to insert the new component into a DOM tree based on the position of the new component in the webpage. 6 . The method of claim 1 , comprising: determining that a component included in the cached stub has been deleted from the webpage received from the origin server; determining that there is a script component in the cached stub following the deleted component; and configuring the instruction to cause a reloading of the webpage. 7 . The method of claim 1 , comprising: determining that a component included in the cached stub has been deleted from the webpage received from the origin server; determining that there is not a script component in the cached stub following the deleted component; and configuring the instruction to delete the component from the DOM tree. 8 . The method of claim 1 , wherein empirically determining the common components of the webpage comprises empirically determining common components of the webpage within a head section of the webpage. 9 . The method of claim 1 , further comprising: including a component in the cached stub, wherein the component was empirically determined to be similar but not identical across multiple requests for the webpage, wherein the component was empirically determined as having the same number and the same types of attributes across multiple requests for the webpage but having at least one attribute with a value that changes across multiple requests for the webpage; and replacing the at least one attribute of the component included in the cached stub by a placeholder; and activating a script that intercepts any access to the placeholder, wherein the script causes a reloading of the webpage in response to a determination that the placeholder has been accessed. 10 . A system for speeding up the delivery of a dynamic webpage, comprising: a processor configured to: receive a request for a webpage, the webpage including one or more dynamic components; send a cached stub in response to the request, the cached stub including common components of the webpage that were empirically determined to be common components across multiple requests for the webpage; forward the request for the webpage to an origin server; receive the webpage from the origin server; determine a difference between the cached stub and the webpage received from the origin server; and send an instruction to correct the difference between the cached stub and the webpage received from the origin server; and a memory coupled to the processor and configured to provide the processor with instructions. 11 . The system of claim 10 , wherein empirically determining the common components of the webpage comprises excluding user-specific information from the common components. 12 . The system of claim 10 , wherein the processor is further configured to: exclude a first script component from being included in the cached stub, wherein the first script component was empirically determined to be common across multiple requests for the webpage, and wherein the first script component is preceded by a second script component that was empirically determined to be uncommon across multiple requests for the webpage. 13 . The system of claim 10 , wherein the processor is further configured to: determine that the webpage received from the origin server includes a new component inserted in the webpage, wherein the new component was not included in the cached stub; determine that inserting the new component in the cached stub would have resulted in the new component being inserted before at least one script component in the cached stub; and configure the instruction to cause a reloading of the webpage. 14 . The system of claim 10 , wherein the processor is further configured to: determine that the webpage received from the origin server includes a new component inserted at a position in the webpage, wherein the new component was not included in the cached stub; determine that inserting the new component in the cached stub would not have resulted in the new component being inserted before at least one script component in the cached stub; and configure the instruction to insert the new component into a DOM tree based on the position of the new component in the webpage. 15 . The system of claim 10 , wherein the processor is further configured to: determine that a component included in the cached stub has been deleted from the webpage received from the origin server; determine that there is a script component in the cached stub following the deleted component; and configure the instruction to cause a reloading of the webpage. 16 . The system of claim 10 , wherein the processor is further configured to: determine that a component included in the cached stub has been deleted from the webpage received from the origin server; determine that there is not a script component in the cached stub following the deleted component; and configure the instruction to delete the component from the DOM tree. 17 . The system of claim 10 , wherein empirically determining the common components of the webpage comprises empirically determining common components of the webpage within a head section of the webpage. 18 . The system of claim 10 , wherein the processor is further configured to: include a component in the ca

Assignees

Inventors

Classifications

  • Responding to QoS · CPC title

  • H04L67/02Primary

    based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • Access to data in other repository systems, e.g. legacy data or dynamic Web page generation · CPC title

  • of access to content, e.g. by caching · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016205166A1 cover?
A method of speeding up the delivery of a dynamic webpage is disclosed. A request for a webpage is received, the webpage including one or more dynamic components. A cached stub is sent in response to the request, the cached stub including common components of the webpage that were empirically determined to be common components across multiple requests for the webpage. The request for the webpag…
Who is the assignee on this patent?
Instart Logic Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/02. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Jul 14 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).