Performance buckets allow you to define buckets, and link them to various server functions. Every time one of these functions is invoked, the server collects statistical data and adds it to the bucket. For example, send-cgi and NSServletService are functions used to serve the CGI and Java servlet requests respectively. You can either define two buckets to maintain separate counters for CGI and servlet requests, or create one bucket that counts requests for both types of dynamic content. The cost of collecting this information is little and impact on the server performance is negligible. This information can later be accessed using The perfdump Utility. The following information is stored in a bucket:
The following buckets are pre-defined by the server:
Configuration
Specify all the configuration information for performance buckets in the obj.conf file. By default the feature is disabled. To enable performance measurement add the following line in obj.conf:
The following examples show how to define new buckets.
Init fn="define-perf-bucket" name="acl-bucket" description="ACL bucket"
Init fn="define-perf-bucket" name="file-bucket" description="Non-cached
responses"
Init fn="define-perf-bucket" name="cgi-bucket" description="CGI Stats"
The prior example creates three buckets: acl-bucket, file-bucket, and cgi-bucket. To associate these buckets with functions, add bucket=bucket-name in front of the obj.conf function for which you wish to measure performance.
Performance Report
The server statistics in buckets can be accessed using The perfdump Utility. The performance buckets information is located in the last section of the report that perfdump returns. To enable reports on performance buckets, complete the following steps:
Define an extension for the performance bucket report. Add the following line to the mime.types file:
Associate the type you declared in mime.types with the service-dump function in the obj.conf file:
Use the URL http://server_name:port_number/.perf to view the performance report.
Note.
You must include a period (.) before the extension you defined in the mime.types file (in this case, .perf).
The report contains the following information:
The following is an example of the performance bucket information available through perfdump:
Performance Counters:
------------------------------------------------
Server start time: Mon Oct 11 15:37:26 1999
Average Total Percent
Total number of requests: 474851
Request processing time: 0.0010 485.3198
Cache Bucket (cache-bucket)
Number of Requests: 474254 ( 99.87%)
Number of Invocations: 474254 ( 98.03%)
Latency: 0.0001 48.7520 ( 10.05%)
Function Processing Time: 0.0003 142.7596 ( 29.42%)
Total Response Time: 0.0004 191.5116 ( 39.46%)
Default Bucket (default-bucket)
Number of Requests: 597 ( 0.13%)
Number of Invocations: 9554 ( 1.97%)
Latency: 0.0000 0.1526 ( 0.03%)
Function Processing Time: 0.0256 245.0459 ( 50.49%)
Total Response Time: 0.0257 245.1985 ( 50.52%)