SYSTEMS AND METHODS FOR MANAGING LOADING PRIORITY OR SEQUENCING OF FRAGMENTS OF A WEB OBJECT
This disclosure is directed to methods and systems for managing delivery and rendering of an item of web content. An intermediary between a client and a server may intercept a request from the client to the server for an item of web content. The intermediary may split the item of web content into a first fragment and a plurality of fragments. The intermediary may inject, into the first fragment for delivery to the client, executable code and a plurality of unique identifiers corresponding to the plurality of fragments. The intermediary may send the first fragment to the client. The injected executable code may generate a request at the client to the server for a second fragment from the plurality of fragments responsive to detecting an event. The intermediary may intercept the request for the second fragment, and may send the second fragment to the client responsive to the request.
1 . A method for managing delivery and rendering of an item of web content, comprising:
(a) intercepting, by an intermediary between a client and a server, a request from the client to the server for an item of web content;
(b) splitting, by the intermediary, the item of web content into a first fragment and a plurality of fragments;
(c) injecting, by the intermediary into the first fragment for delivery to the client, executable code and a plurality of unique identifiers corresponding to the plurality of fragments;
(d) sending, by the intermediary, the first fragment to the client, the injected executable code generating a request at the client to the server for a second fragment from the plurality of fragments responsive to detecting an event, the detected event corresponding to a unique identifier of the second fragment, and comprising one of: a user event, a timer event and a document object model event, that involves a display or use of the second fragment;
(e) intercepting, by the intermediary, the request for the second fragment; and
(f) sending, by the intermediary, the second fragment to the client responsive to the request for the second fragment.
2 . The method of claim 1 , wherein (a) further comprises determining, by the intermediary, that the item of web content comprises one of: an HTML page, an image, a cascading style sheet (CSS), a script file, a video object, an audio object, and a Flash file or small web format (SWF) file.
3 . The method of claim 1 , wherein (b) comprises splitting the item of web content based on a version of the item of web content cached by the intermediary.
4 . The method of claim 1 , wherein (b) comprises splitting the item of web content based on a response from the server to the request for the item of web content.
5 . The method of claim 1 , wherein (b) comprises splitting the item of web content based on a configuration of the item of web content.
6 . The method of claim 1 , further comprising modifying a default rendering characteristic derived from the server for each of the plurality of fragments, each of the modified rendering characteristic comprising an action and a trigger based on detecting one of: a user event, a timer event and a document object model event, that involves a display or use of a corresponding fragment.
7 . The method of claim 1 , wherein (b) further comprises forming the first fragment based on a version of the first fragment cached by the intermediary.
8 . The method of claim 1 , further comprising sending, by the intermediary to the server, the intercepted request for the item of web content.
9 . The method of claim 1 , further comprising updating a cache based on a response from the server to the request for the item of web content.
10 . The method of claim 1 , further comprising storing the first fragment in a cache.
11 . The method of claim 1 , wherein (c) comprises injecting the executable code into the first fragment, the executable code comprising code expressed in at least one of: ECMAScript language or a language similar or related to the ECMAScript language, ActionScript language, visual basic language and hypertext markup language.
12 . The method of claim 1 , wherein (e) further comprises preventing the intercepted request for the second fragment from reaching the server.
13 . The method of claim 1 , further comprising forming the second fragment based on a version of the second fragment cached by the intermediary.
14 . The method of claim 1 , further comprising forming the second fragment based on a response from the server to the request for the item of web content.
15 . The method of claim 1 , further comprising waiting, by the intermediary, for a response from the server to the request for the item of web content, to generate the second fragment.
16 . A system for managing delivery and rendering of an item of web content, the system comprising:
executable code injected into a first fragment of an item of web content, for delivery to a client, the injected executable code generating a request at the client to a server for a second fragment from a plurality of fragments of the item of web content responsive to detecting an event, the detected event corresponding to a unique identifier of the second fragment, and comprising one of: a user event, a timer event and a document object model event, that involves a display or use of the second fragment; and
an intermediary between the client and the server, the intermediary:
intercepting a request from the client to the server for the item of web content;
splitting the item of web content into the first fragment and the plurality of fragments;
injecting, into the first fragment, the executable code and a plurality of unique identifiers corresponding to the plurality of fragments;
sending the first fragment to the client;
intercepting the request for the second fragment; and
sending the second fragment to the client responsive to the request for the second fragment.
17 . The system of claim 16 , wherein the intermediary determines that the item of web content comprises one of: an HTML page, an image, a cascading style sheet (CSS), a script file, a video object, an audio object, and a Flash file or small web format (SWF) file.
18 . The system of claim 16 , wherein the intermediary splits the item of web content based on a version of the item of web content cached by the intermediary.
19 . The system of claim 16 , wherein the intermediary splits the item of web content based on a response from the server to the request for the item of web content.
20 . The system of claim 16 , wherein the intermediary splits the item of web content based on a configuration of the item of web content.
21 . The system of claim 16 , wherein the intermediary modifies a default rendering characteristic derived from the server for each of the plurality of fragments, each of the modified rendering characteristic comprising an action and a trigger based on detecting one of: a user event, a timer event and a document object model event, that involves a display or use of a corresponding fragment.
22 . The system of claim 16 , wherein the intermediary forms the first fragment based on a version of the first fragment cached by the intermediary.
23 . The system of claim 16 , wherein the intermediary sends to the server the intercepted request for the item of web content.
24 . The system of claim 16 , wherein the intermediary updates a cache based on a response from the server to the request for the item of web content.
25 . The system of claim 16 , wherein the intermediary stores the first fragment in a cache.
26 . The system of claim 16 , wherein the intermediary injects the executable code into the first fragment, the executable code comprising code expressed in at least one of: ECMAScript language or a language similar or related to the ECMAScript language, ActionScript language, visual basic language and hypertext markup language.
27 . The system of claim 16 , wherein the intermediary intercepts the request for the second fragment, the intercepted request for the second fragment prevented from reaching the server.
28 . The system of claim 16 , wherein the intermediary forms the second fragment based on a version of the second fragment cached by the intermediary.
29 . The system of claim 16 , wherein the intermediary forms the second fragment based on a response from the server to the request for the item of web content.
30 . The system of claim 16 , wherein the intermediary waits for a response from the server to the request for the item of web content, to generate the second fragment.