Reducing web page loading time
First Claim
1. A method, comprising:
- monitoring, by a client-side agent executed by a processing device, a client machine for outgoing communications from the client machine, the outgoing communications comprising a web page request, wherein the web page request originated from a web browser of the client machine that is not modified to interact with the client-side agent, and wherein the client-side agent directs an installation of a hook at an operating system (OS) of the client machine to catch the outgoing communications from the web browser;
changing, by the client-side agent, a destination port number of a detected outgoing communication to an updated port number of a web server extension component corresponding to the client-side agent, the web server extension component comprising a module that is executing on a web server corresponding to the web page request of the outgoing communication;
forwarding, by the client-side agent, the web page request to the web server extension component via the updated port number;
receiving, by the client-side agent, page source code of a web page of the web page request and resources corresponding to the page source code, wherein the web server extension component identifies and gathers the resources in view of parsing the page source code and sends the resources as a single compressed file to the client-side agent;
decompressing the single compressed file to recover the page source code and the resources;
during the decompressing;
sending the decompressed page source code to the client machine; and
storing the decompressed resources at a data store of the client-side agent; and
when a request by the client machine for any of the resources is intercepted, sending, by the client-side agent, the decompressed resources corresponding to the requested resources to the client machine;
wherein the decompressed resources stored at the client-side agent to be sent to other client machines corresponding to the client-side agent when the other client machines request the resources as part of other web page requests.
1 Assignment
0 Petitions
Accused Products
Abstract
A backwards-compatible mechanism for reducing web page loading time is disclosed. A method includes forwarding, by a web server extension module of a server machine, a web page request to a web server component of the server machine, the web page request received from a client-side agent associated with the web server extension module. The method further includes receiving, from the web server component, page source code of a web page of the web page request, parsing the page source code to identify one or more resources associated with page source code, requesting the identified one or more resources from the web server component, compressing resources of the one or more resources that are received from the web server component into an archive file, and sending the page source code and the archive file to the client-side agent as one or more packages.
-
Citations
16 Claims
-
1. A method, comprising:
-
monitoring, by a client-side agent executed by a processing device, a client machine for outgoing communications from the client machine, the outgoing communications comprising a web page request, wherein the web page request originated from a web browser of the client machine that is not modified to interact with the client-side agent, and wherein the client-side agent directs an installation of a hook at an operating system (OS) of the client machine to catch the outgoing communications from the web browser; changing, by the client-side agent, a destination port number of a detected outgoing communication to an updated port number of a web server extension component corresponding to the client-side agent, the web server extension component comprising a module that is executing on a web server corresponding to the web page request of the outgoing communication; forwarding, by the client-side agent, the web page request to the web server extension component via the updated port number; receiving, by the client-side agent, page source code of a web page of the web page request and resources corresponding to the page source code, wherein the web server extension component identifies and gathers the resources in view of parsing the page source code and sends the resources as a single compressed file to the client-side agent; decompressing the single compressed file to recover the page source code and the resources; during the decompressing; sending the decompressed page source code to the client machine; and storing the decompressed resources at a data store of the client-side agent; and when a request by the client machine for any of the resources is intercepted, sending, by the client-side agent, the decompressed resources corresponding to the requested resources to the client machine; wherein the decompressed resources stored at the client-side agent to be sent to other client machines corresponding to the client-side agent when the other client machines request the resources as part of other web page requests. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system, comprising:
-
a memory; a processing device communicably coupled to the memory; and a client-side agent executable from the memory by the processing device, the client-side agent to; monitor a client machine for outgoing communications from the client machine, the outgoing communications comprising a web page request, wherein the web page request originated from a web browser of the client machine that is not modified to interact with the client-side agent, and wherein the client-side agent directs an installation of a hook at an operating system (OS) of the client machine to catch the outgoing communications from the web browser; change a destination port number of a detected outgoing communication to an updated port number of a web server extension component corresponding to the client-side agent, the web server extension component comprising a module that is executing on a web server corresponding to the web page request of the outgoing communication; forward the web page request to the web server extension component via the updated port number; receive page source code of a web page of the web page request and resources corresponding to the page source code, wherein the web server extension component identifies and gathers the resources in view of parsing the page source code and sends the resources as a single compressed file to the client-side agent; decompress the single compressed file to recover the page source code and the resources; during the decompressing; send the decompressed page source code to the client machine; and store the decompressed resources at a data store of the client-side agent; and when a request by the client machine for any of the resources is intercepted, send the decompressed resources corresponding to the requested resources to the client machine; wherein the decompressed resources stored at the client-side agent to be sent to other client machines corresponding to the client-side agent when the other client machines request the resources as part of other web page requests. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory machine-readable storage medium including instructions that, when accessed by a processing device, cause the processing device to:
-
forward, by a web server extension module executed by the processing device of a server machine, a web page request to a web server component of the server machine, the web page request received from a client-side agent corresponding to the web server extension module, wherein the web page request originated from a web browser of the client machine that is not modified to interact with the client-side agent, and wherein the client-side agent directs an installation of a hook at an operating system (OS) of the client machine to catch outgoing communications from the web browser; receive, by the web server extension module from the web server component, page source code of a web page of the web page request; parse, by the web server extension module, the page source code to identify resources corresponding to page source code; request, by the web server extension module, the identified resources from the web server component; compress, by the web server extension module, the identified resources that are received from the web server component into an archive file; and send, by the web server extension module, the page source code and the archive file to the client-side agent as one or more packages, wherein the identified resources are stored at the client-side agent and sent from the client-side agent to other client machines corresponding to the client-side agent when the other client machines request the resources as part of other web page requests. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification