Progressive consolidation of web page resources

US2018060286A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018060286-A1
Application numberUS-201715693522-A
CountryUS
Kind codeA1
Filing dateSep 1, 2017
Priority dateNov 26, 2012
Publication dateMar 1, 2018
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.

Described herein are systems, method and devices for modifying web pages to enhance their performance. In certain non-limiting embodiments, improved resource consolidation techniques are described, which are sometimes referred to herein as ‘progressive’ consolidation. Such techniques can be used to consolidate page resources in a way that allows a client browser or other application to process each of the consolidated resources after it arrives, even if all the client has not fully retrieved all of the consolidated resources yet. The teachings hereof can be used, for example, to modify a markup language document (HTML) to consolidate CSS, JavaScript, images, or other resources referenced therein.

First claim

Opening claim text (preview).

1 - 29 . (canceled) 30 . A method implemented by a computer device for modifying web pages before delivery to a client web browser, to enhance web page performance, the method comprising: receiving a first HTML file associated with a web page; modifying the first HTML file by removing first and second references in the first HTML file, the first reference being to a first resource and the second reference being to a second resource; each of the first and second resources having a type that is one of following types: type CSS, type image, and type script; inserting content from the first resource and content from second resource into another file that comprises a second HTML file of type HTML; modifying the first HTML file by inserting an iFrame in the first HTML file and inserting a reference to the second HTML file within the iFrame, so as to have the client web browser process the content from the first resource and the content from the second resource that is in the container resource while processing the first HTML file; and, further modifying the first HTML file by inserting code into the first HTML file, the code comprising instructions executable at the client web browser to apply the content from the first resource and the content from the second resource when rendering the web page based on the HTML; serve the modified HTML to the client web browser. 31 . The method of claim 30 , wherein any of the references to the first resource, second resource, and the second HTML file are URIs. 32 . The method of claim 30 , further comprising: wherein the code is written in JavaScript and the code comprises instructions to cause the client web browser to any of: (a) execute the contents of a JavaScript resource in a parent frame global context of the iFrame and (b) apply style rules from a CSS resource to a parent frame of the iFrame. 33 . The method of claim 30 , where the first HTML file and the second HTML file are served from the same hostname. 34 . The method of claim 30 , where the first HTML file and the second HTML file are served from different hostnames. 35 . The method of claim 34 , wherein the code comprises instructions to employ a cross-domain communication method. 36 . A proxy server machine comprising circuitry forming one or more processors and at least one storage device storing instructions for modifying web pages before delivery to a client web browser, to enhance web page performance, the instructions, when executed by the one or more processors, causing the proxy server machine to: receive a request for a first HTML file from a web browser running on a client device, the first HTML file being associated with a web page; request the first HTML file from another server machine; receive the first HTML file from the another server machine; modify the first HTML file by removing first and second references in the first HTML file, the first reference being to a first resource and the second reference being to a second resource; each of the first and second resources having a type that is one of following types: type CSS, type image, and type script; insert content from the first resource and content from second resource into another file that comprises a second HTML file of type HTML; modify the first HTML file by inserting an iFrame in the first HTML file and inserting a reference to the second HTML file within the iFrame, so as to have the client web browser process the content from the first resource and the content from the second resource that is in the container resource while processing the first HTML file; and, further modify the first HTML file by inserting code into the first HTML file, the code comprising instructions executable at the client web browser to apply the content from the first resource and the content from the second resource when rendering the web page based on the HTML; serve the modified HTML to the client web browser. 37 . The machine of claim 36 , wherein the another server machine comprises an origin server associated with a content provider. 38 . The machine of claim 36 , wherein any of the references to the first resource, second resource, and the second HTML file are URIs. 39 . The machine of claim 36 , further comprising: wherein the code is written in JavaScript and the code comprises instructions to cause the client web browser to any of: (a) execute the contents of a JavaScript resource in a parent frame global context of the iFrame and (b) apply style rules from a CSS resource to a parent frame of the iFrame. 40 . The machine of claim 36 , where the first HTML file and the second HTML file are served from the same hostname. 41 . The machine of claim 36 , where the first HTML file and the second HTML file are served from different hostnames. 42 . The machine of claim 41 , wherein the code comprises instructions to employ a cross-domain communication method.

Assignees

Inventors

Classifications

  • Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets · CPC title

  • Coding or compression of tree-structured data · CPC title

  • Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces · CPC title

  • Hyperlinking · CPC title

  • Transformation · CPC title

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 US2018060286A1 cover?
Described herein are systems, method and devices for modifying web pages to enhance their performance. In certain non-limiting embodiments, improved resource consolidation techniques are described, which are sometimes referred to herein as ‘progressive’ consolidation. Such techniques can be used to consolidate page resources in a way that allows a client browser or other application to process …
Who is the assignee on this patent?
Akamai Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F17/2247. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Mar 01 2018 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).