System and method for monitoring performance of a server system using otherwise unused processing capacity of user computing devices
First Claim
1. A method of monitoring performance of a server system, the method comprising:
- monitoring CPU utilization of each of a plurality of user computers that are distributed geographically on a computer network to identify a group of said user computers that are in a substantially idle state, said group comprising multiple user computers;
causing the substantially idle user computers in the group to access a target server system over the computer network as simulated users thereof while monitoring performance of the target server system, such that each of the user computers in the group generates performance data reflective of the performance of the target server system as seen from the respective locations of such user computers; and
collecting the performance data from each of the user computers in the group;
whereby otherwise unused processing capacity of the user computers is used to monitor the target server system.
10 Assignments
0 Petitions
Accused Products
Abstract
A monitoring system provides a service for users to monitor their respective Web sites, or other server systems, as seen from the computing devices of other users. In a preferred embodiment, the system includes an agent component that runs on the computing devices of service users to provide functionality for accessing and monitoring the performance of a server (preferably when such devices are otherwise idle). By running the agent component on a computer, a user effectively makes that computer available to others for use as a monitoring agent. Processing resources for conducting monitoring sessions are thus contributed and shared by members of a community. The agents are remotely configurable over the Internet, and may be configured, for example, to execute a particular Web transaction while monitoring specified performance parameters (server response times, network hop delays, server availability, etc). Using a service provider Web site, a user of the service can set up a monitoring session in which agent devices of other community members are used to monitor the performance of the user'"'"'s server system. In one embodiment, the system implements a reciprocity policy in which the extent to which a user may use the service for monitoring is dependent upon the quantity of processing resources (e.g., transaction execution events) that user has contributed to the community. Performance data collected by the agents may be used both to generate server-specific reports and general Internet “weather maps.”
-
Citations
23 Claims
-
1. A method of monitoring performance of a server system, the method comprising:
-
monitoring CPU utilization of each of a plurality of user computers that are distributed geographically on a computer network to identify a group of said user computers that are in a substantially idle state, said group comprising multiple user computers;
causing the substantially idle user computers in the group to access a target server system over the computer network as simulated users thereof while monitoring performance of the target server system, such that each of the user computers in the group generates performance data reflective of the performance of the target server system as seen from the respective locations of such user computers; and
collecting the performance data from each of the user computers in the group;
whereby otherwise unused processing capacity of the user computers is used to monitor the target server system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A server monitoring system, comprising:
-
an agent component that is adapted to run on user computing devices to form agents for monitoring target server systems, wherein the agent component includes functionality for monitoring processing loads of the user computing devices on which the agent component runs, and further includes functionality for monitoring server performance by at least (a) sending request messages to specific target server systems as simulated users thereof, and (b) monitoring responses to such request messages to generate performance data, wherein the agent component is configured to monitor end user performance only when a host computing device on which the agent component runs is in a substantially idle state;
a controller that sends work requests to the agents over a computer network, the work requests specifying request messages to be sent by the agents to specific target server systems; and
a reports server that generates performance reports based on the performance data generated by the agents;
wherein the agent component takes processing loads of the user computing devices into consideration in determining when to send the requests messages to the target server system such that the target server system is monitored primarily using otherwise-unused processing resources of the user computing devices. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23)
-
Specification