System and method for automated workload characterization of an application server
First Claim
1. A system, comprising:
- one or more processors;
memory coupled to the one or more processors and comprising program instructions executable by the one or more processors to implement an application server, wherein the application server comprises;
a plurality of services for supporting one or more applications running on the application server, wherein the plurality of services comprise one or more application component containers for managing the execution of components of the one or more applications running on the application server, and wherein one or more of the components are configured to invoke one or more of the plurality of services;
a resource measurement framework comprising a plurality of interception points each configured to intercept a request to one of the plurality of services, wherein in response to intercepting a request, the resource measurement framework is configured to record resource usage data for the request;
wherein the resource measurement framework is configured to record resource usage data for a plurality of requests to the plurality of services for characterizing a workload of the application server while running the one or more applications; and
wherein the resource measurement framework is configured to record the resource usage data for the plurality of requests in a log, wherein the program instructions are further executable by the one or more processors to implement a workload characterization to parse the log and generate a characterization of the workload for the application server.
2 Assignments
0 Petitions
Accused Products
Abstract
An application server may be instrumented to provide a resource measurement framework to collect resource usage data regarding request processing by the application server and applications executing on the application server. The resource measurement framework of an application server may collect hardware and software resource usage data regarding request processing at interception points located at interfaces between application components and services or other components of the application server by instrumenting those interfaces. The resource measurement framework may collect resource usage by instrumenting standard interfaces and/or methods of various specifications, such as implemented by containers or other components of the application server. Thus, the resource measurement framework may collect resource usage for applications or application components that do not include any resource measuring capabilities. The collected resource usage data may be parsed and combined to create an overall characterization of resource usage corresponding to the application server'"'"'s request processing.
-
Citations
18 Claims
-
1. A system, comprising:
-
one or more processors; memory coupled to the one or more processors and comprising program instructions executable by the one or more processors to implement an application server, wherein the application server comprises; a plurality of services for supporting one or more applications running on the application server, wherein the plurality of services comprise one or more application component containers for managing the execution of components of the one or more applications running on the application server, and wherein one or more of the components are configured to invoke one or more of the plurality of services; a resource measurement framework comprising a plurality of interception points each configured to intercept a request to one of the plurality of services, wherein in response to intercepting a request, the resource measurement framework is configured to record resource usage data for the request; wherein the resource measurement framework is configured to record resource usage data for a plurality of requests to the plurality of services for characterizing a workload of the application server while running the one or more applications; and wherein the resource measurement framework is configured to record the resource usage data for the plurality of requests in a log, wherein the program instructions are further executable by the one or more processors to implement a workload characterization to parse the log and generate a characterization of the workload for the application server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, comprising:
-
instrumenting program code for an application server to provide a resource measurement framework for the application server, wherein the application server comprises a plurality of services for supporting one or more applications running on the application server, wherein the plurality of services comprise one or more application component containers for managing the execution of components of the one or more applications running on the application server, wherein one or more of the components are configured to invoke one or more of the plurality of services; running the one or more applications on the application server; the resource measurement framework intercepting requests to the plurality of services; in response to intercepting each request, the resource measurement framework recording resource usage data for the request in a log; and wherein said intercepting and said recording are performed transparently to the one or more applications running on the application server; and performing a workload characterization comprising parsing the log and generating a characterization of the workload for the application server. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer accessible storage medium, comprising program instructions, wherein the program instructions are computer executable to implement:
-
an application server instrumented to provide a resource measurement framework for the application server, wherein the application server comprises a plurality of services for supporting one or more applications running on the application server, wherein the plurality of services comprise one or more application component containers for managing the execution of components of the one or more applications running on the application server, wherein one or more of the components are configured to invoke one or more of the plurality of services; running the one or more applications on the application server; the resource measurement framework intercepting requests to the plurality of services; in response to intercepting each request, the resource measurement framework recording resource usage data for the request in a log; and wherein said intercepting and said recording are performed transparently to the one or more applications running on the application server; and performing a workload characterization comprising parsing the log and generating a characterization of the workload for the application server.
-
Specification