Method and system for monitoring the performance of a distributed application
First Claim
1. A method for determining one or more performance metrics for a distributed application in which distributed application data are transferred from a first site to a second site over a network, comprising the steps of:
- (a) enabling a user to transmit a request for the distributed application data desired by the user, said request being transmitted from the second site to the first site over the network;
(b) in response to the request, transmitting the distributed application data from the first site to the second site over the network, if the distributed application data are not already accessible at the second site;
(c) including machine instructions that define a performance monitoring function with the distributed application data that were requested and transmitted over the network to the second site; and
(d) executing the machine instructions at the second site, to implement the performance monitoring function and to determine the one or more performance metrics for the distributed application without using the performance monitoring function to request any distributed application data from any other site.
8 Assignments
0 Petitions
Accused Products
Abstract
A service monitor and a browser monitor determine performance metrics on both a server and a client in connection with a distributed application running on a network. While applicable to other types of distributed application data, an example is described in which a Web page is requested by a user running a browser program on the client computer. In response, the server transmits the requested Web page, along with JavaScript code that defines a browser monitor, to the client. A browser monitoring function controlled by this code determines a plurality of different performance metrics related to the access of Web pages by the client. In addition, the server monitor determines performance metrics specific to its function in providing the Web page to the client. A correlated performance metric is determined by combining a server performance metric with a browser performance metric.
388 Citations
61 Claims
-
1. A method for determining one or more performance metrics for a distributed application in which distributed application data are transferred from a first site to a second site over a network, comprising the steps of:
-
(a) enabling a user to transmit a request for the distributed application data desired by the user, said request being transmitted from the second site to the first site over the network;
(b) in response to the request, transmitting the distributed application data from the first site to the second site over the network, if the distributed application data are not already accessible at the second site;
(c) including machine instructions that define a performance monitoring function with the distributed application data that were requested and transmitted over the network to the second site; and
(d) executing the machine instructions at the second site, to implement the performance monitoring function and to determine the one or more performance metrics for the distributed application without using the performance monitoring function to request any distributed application data from any other site. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 20)
-
-
13. A machine-readable medium on which are stored machine instructions for inclusion with distributed application data that are transferred from one site to another, said machine instructions causing:
-
(a) a performance monitoring function to be implemented when the distributed application data are accessed; and
(b) the performance monitoring function to determine one or more performance metrics for a distributed application in which the distributed application data are transferred between sites and accessed at one of the sites, without using the performance monitoring function to request any distributed application data from any other site.
-
-
14. A system for determining one or more performance metrics for a distributed application in which distributed application data are transferred from a first site to a second site over a network, comprising:
-
(a) a memory;
(b) a network interface; and
(c) a processing device that is coupled to the memory, and the network interface, said network interface being adapted to enable communication over the network, wherein at the second site, the processing device causes a request for the distributed application data to be transmitted over the network through the network interface to the first site, said processing device at the first site responding by transmitting the distributed application data along with machine instructions that cause the processing device at the second site to perform a performance monitoring function when executed by said processing device as the distributed application data are accessed at the second site, said performance monitoring function determining said at least one performance metric and being implemented without requiring any affirmative action by a user of the processing device and without using the performance monitoring function to request any distributed application data from any other site.
-
-
21. A method for determining and collecting at least one performance metric related to access of a Web page by a browser program on a client device, including at least one of a compound performance metric and a correlated performance for a network, comprising the steps of:
-
(a) enabling a user to request transfer of the Web page from a server device to the client device over a network;
(b) including machine instructions with the Web page when the Web page is transferred to the client device;
(c) when the Web page is loaded by the client device for rendering by the browser program, causing the client device to execute the machine instructions to carryout a browser monitoring function, said browser monitoring function being implemented without requiring any affirmative action by a user of the client device;
(d) determining said at least one performance metric on the client device with the browser monitoring function without using the browser monitoring function to request any Web page from any other site; and
(e) if a correlated performance metric is to be determined;
(i) determining a server performance metric on a server; and
(ii) combining the server performance metric with said at least one performance metric to determine the correlated performance metric. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38, 39, 40, 41)
-
-
35. A memory medium on which are stored machine readable instructions, which when executed by a client computing device, cause the client computing device to carryout a browser monitoring function, said browser monitoring function being implemented without requiring any affirmative action by a user of the client computing device and being used for determining at least one performance metric on the client computing device with the browser monitoring function, said at least one performance metric being related to access of a distributed application by a browser program executed on the client computing device and enabling at least one of a compound performance metric and a correlated performance metric be determined without using the browser monitoring function to request any distributed application from any other site.
-
42. A system for determining and collecting at least one performance metric related to access of a Web page by a browser program, comprising:
-
(a) a memory;
(b) a network interface; and
(c) a processing device that is coupled to the memory, and the network interface, said network interface being adapted to couple to a remote storage at a server to retrieve the Web page, said Web page including machine instructions that perform a browser monitoring function and which are executed by the processing device when the Web page is loaded by the processing device for rendering, said browser monitoring function determining said at least one performance metric and being implemented without requiring any affirmative action by a user of the processing device and without using the browser monitoring function to request any Web page from any other site, said at least one performance metric including at least one of compound performance metric and a correlated performance metric. - View Dependent Claims (43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 58, 59, 60)
-
-
57. A method for automatically directing a computing device that is about to download distributed application data so that the computing device obtains the distributed application data from one of a plurality of sources nominally providing the distributed application data, comprising the steps of:
-
(a) determining performance metrics relating to downloading other distributed application data from each of at least two of the plurality of sources by the computing device; and
(b) as a function of the performance metrics for said at least two of the plurality of sources, automatically directing the computing device to request download of the distributed application data from a preferred source having a better performance metric compared to other of the plurality of sources.
-
-
61. A system for automatically directing distributed application data to be downloaded from one of a plurality of sources providing the distributed application data, so as to achieve a relatively better performance in downloading the distribution application data, comprising:
-
(a) a monitor on which are displayed text and graphics;
(b) a memory in which are stored machine instructions;
(c) a network interface that couples to a network over which the distributed application data are conveyed; and
(d) a processor coupled to the monitor, the network interface, and the memory, said processor carrying out a plurality of functions, including;
(i) determining performance metrics relating to downloading other distributed application data from each of at least two of a plurality of sources; and
(ii) as a function of the performance metrics for said at least two of the plurality of sources, automatically directing a request to download the distributed application data from a preferred source having a better performance metric than any other of the plurality of sources.
-
Specification