Deferred and off-loaded rendering of selected portions of web pages to incorporate late-arriving service data
First Claim
1. A method of dynamically generating and serving web pages, the method comprising:
- receiving a page request at a server, the page request generated by a web browser running on a user computer and corresponding to a web page that is generated dynamically;
in response to the page request, sending a service request from the server to a service to request service data to incorporate into the web page;
before the service returns the service data, transmitting a first portion of the web page from the server to the user computer for display by the web browser, said first portion including viewable content that is viewable on the user computer while the service request is pending, and including a placeholder for the requested service data, said first portion transmitted to the user computer while said service request is pending;
after the service returns the service data and before the web page has been fully loaded, transmitting from the server to the user computer a second portion of the web page, the second portion including the service data; and
transmitting to the user computer a page update handler which, when executed by the web browser, incorporates the service data included within the second portion of the web page into the first portion of the web page in a viewable format to complete the web page;
whereby the method enables an incomplete version of the requested web page to be viewed on the user computer while the service data is being retrieved.
2 Assignments
0 Petitions
Accused Products
Abstract
A web server system that incorporates service data into web pages defers the task of generating a portion of a web page associated with late-arriving service data, and offloads this task to the web browser that requested the page. Upon receiving a page request that involves a service request to a potentially slow service, the web server system generates and serves a “deferred rendering”, version of the web page that lacks the data from this service, but which includes most or all of the other visual elements of the page. Upon receiving the requested service data, the web server system forwards this data to the browser, which executes a page update handler (preferably a JavaScript function) to update the page with the service data. The data may be added near the top of the visual page, within a display object that initially serves as a placeholder for the service data.
-
Citations
64 Claims
-
1. A method of dynamically generating and serving web pages, the method comprising:
-
receiving a page request at a server, the page request generated by a web browser running on a user computer and corresponding to a web page that is generated dynamically; in response to the page request, sending a service request from the server to a service to request service data to incorporate into the web page; before the service returns the service data, transmitting a first portion of the web page from the server to the user computer for display by the web browser, said first portion including viewable content that is viewable on the user computer while the service request is pending, and including a placeholder for the requested service data, said first portion transmitted to the user computer while said service request is pending; after the service returns the service data and before the web page has been fully loaded, transmitting from the server to the user computer a second portion of the web page, the second portion including the service data; and transmitting to the user computer a page update handler which, when executed by the web browser, incorporates the service data included within the second portion of the web page into the first portion of the web page in a viewable format to complete the web page; whereby the method enables an incomplete version of the requested web page to be viewed on the user computer while the service data is being retrieved. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method of responding to a request from a web browser for a web page, the method comprising:
-
sending a service request to a service to request service data to be displayed within a portion of the web page, said service request sent to the service in response to the request for the web page, and before the requested web page is transmitted to the web browser; determining whether the service returns the requested service data within a selected time interval; when the service returns the requested service data within the selected time interval, populating said portion of the web page with the service data prior to transmitting the web page to the web browser; and when the service does not return the requested service data within the selected time interval;
(a) transmitting at least said portion of the web page to the web browser without the service data while the service request is pending, to thereby enable an incomplete version of the web page to be displayed by the web browser while the service data is being retrieved, (b) in response to receiving the requested service data from the service, transmitting the service data to the web browser, and (c) invoking a page update handler which, when executed by the web browser, populates said portion of the web page with the service data transmitted in (b);wherein the method is performed by a server system that comprises one or more physical servers. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A method of generating a web page in response to a request from a web browser, the method comprising:
-
(a) sending a service request to a service to request service data to be displayed in the web page; (b) while the service request is pending, transmitting to the web browser at least a first portion of the web page, said first portion including content that is viewable within the web browser while the service data is being retrieved; (c) after the service responds to the service request by returning the service data, sending the service data to the web browser; and (d) instructing the web browser to execute a page update handler that, when executed, incorporates a viewable representation of the service data, as transmitted in (c), into the first portion of the web page to complete the web page; wherein the method, including (a), (b), (c) and (d), is performed by a web server system that comprises one or more physical servers, and the method enables a user to view an incomplete version of the web page while the service data is being retrieved. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49)
-
-
50. A system for responding to web page requests, the system comprising:
a web server system that comprises one or more physical servers, said web server system responsive to page requests from browsers running on user computing devices by generating and serving web pages that include data retrieved from one or more services, said web server system operative to respond to a request from a browser for a web page according to a process that comprises; sending a service request to a service to request service data to be displayed in the web page; while the service request is pending, transmitting to the browser at least a first portion of the web page, said first portion including content that is viewable with the browser while the service data is being retrieved, and including a placeholder for the requested service data; after the service responds to the service request by returning the service data, sending the service data to the browser; and causing the browser to execute a page update handler that, when executed, causes a viewable representation of the service data to be incorporated into the first portion of the web page to complete the web page. - View Dependent Claims (51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64)
Specification