Method and apparatus for determining application responsiveness over a network
Abstract
Application responsiveness over a network, such as for a web site or web-based application, is monitored and optionally recorded by tracking actual end users interacting with the application and the time it takes for their requested web pages to load. The process involves a web server that sends instrumented web pages or pointers to such instrumentation code in response to browser requests. This instrumentation causes scripting code on the client browser to gather data sufficient to enable determination of how long the page took to load, with separate measurements for latency time and/or intra-page load time, and to classify the type of request for which the measurements correspond. The scripting code can report the values to a record keeper or an external process. In one embodiment, Page Lifecycle Events are used to track and update a Marker and Timestamp from which the page load times and classifications are derived.
Claims
exact text as granted — not AI-modified1 . A method of monitoring application responsiveness over a network, the method comprising:
instrumenting a web page that causes a client receiving the web page to gather data sufficient to enable determination of a latency; wherein the latency is a duration from a time a user clicks on a link on a web page, or other action that results in a new web request, to the time the resultant page starts loading.
2 . The method of claim 1 and further comprising instrumenting the web page to gather data sufficient to enable determination of an intra-page load time.
3 . The method of claim 1 and further comprising sending the instrumented page to the client.
4 . The method of claim 1 wherein the instrumented page includes code that causes the client to determine the latency.
5 . The method of claim 4 , wherein the instrumented page includes code that causes the client to perform an action based on the latency or an intra-page load time.
6 . The method of claim 5 , wherein the action includes one or more of displaying page load time information, generating an alert, loading alternate content, or redirecting the browser.
7 . The method of claim 1 wherein the gathered data enables a server or external process to determine the web page's latency.
8 . The method of claim 1 wherein the instrumented page includes code that causes the client to send the data to a record keeper or external process.
9 . The method of claim 8 wherein the client sends the data to the record keeper or external process by use of Asynchronous JavaScript and XML (AJAX).
10 . The method of claim 8 wherein the latency is calculated by the client and transmitted via a web request.
11 . The method of claim 8 wherein the client sends the data to the record keeper or external process by use of an image request query string.
12 . The method of claim 11 wherein the data is encoded in the query string.
13 . The method of claim 1 wherein the instrumented page includes code at Lifecycle Event locations within the page.
14 . The method of claim 13 wherein the Lifecycle Event locations are selected from the group consisting of a global script section of the web page executed by a client browser as the page loads, the browser's onLoad event handler for the page called by the browser after the page finishes loading, the browser's onBeforeUnload event handler for the page called by the browser as it is about to unload the current page, the browser's onUnload event handler for the page called by the browser when the page unloads, and the browser's onError event handler called by the browser when a script error occurs.
15 . The method of claim 1 wherein the instrumented page uses one or more cookies that hold a Timestamp value and Marker that holds a predefined state value.
16 . The method of claim 1 wherein the instrumented page provides a Timestamp value from the web server which is compared to a Timestamp value from the client to determine if the page or portion of the page was served from cache.
17 . The method of claim 16 , wherein the instrumented page includes code that causes the client to take an action based on the determination that the page or portion of the page was served from cache.
18 . The method of claim 17 , wherein the action includes one or more of retrieving a fresh copy of the page, loading alternate content, redirecting the browser or generating an alert.
19 . A machine readable device containing instrumentation for causing a client computer to perform a method, the method comprising:
gathering data sufficient to enable determination of a latency; and sending the data to a record keeper or external process; wherein the latency is a duration from a time a user clicks on a link on a web page, or other action that results in a new web request, to the time the resultant page starts loading.
20 . A system comprising:
a computer readable device containing instrumentation; a server to send the instrumentation for insertion into a family of web pages that causes a client computer receiving such web pages to perform a method, the method comprising:
gathering data sufficient to enable determination of a latency; and
sending the data to a record keeper or external process, wherein the latency is a duration from a time a user clicks on a link on a web page, or other action that results in a new web request, to the time the resultant page starts loading.Join the waitlist — get patent alerts
Track US2010088411A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.