WebSphere Application Server Performance Tuning Toolkit



With the broad range of multitier architecture applications based on Java EE deployed at the enterprise level, performance problems can be more of an issue and harder to diagnose. The multi-layer architecture makes the performance problems hard to locate, and it takes more time and effort to investigate and locate performance bottlenecks. The impact from performance issues can be severe.

To get maximum capacity form WebSphere Application Server applications, it’s important to monitor and tune their performance. WebSphere Application Server Performance Tuning Toolkit helps you to do so.


The WebSphere Application Server Performance Tuning Toolkit (PTT) is an intelligent tool that is based on Eclipse. It helps users monitor their system and locate performance bottleneck by using data analysis and statistical inference technology. Through JMX, The toolkit collects performance data from Performance Monitoring Interface (PMI) of WebSphere Application Server, and gives users an easy-to-understand picture with charts and forms to locate the bottleneck and tune them appropriately.

Compared with other tools, this toolkit provides a dynamic framework that allows users to define rules that are suitable for their system, greatly increasing the accuracy of performance problem detection and diagnostics. Figure 1 summarizes the main function of this toolkit.

Figure 1. Summary of the main functions of the Performance Tuning Toolkit
diagram showing four main functional areas
diagram showing four main functional areas

Some common rule have been defined to detect the performance decline and take action automatically. For example, alerts can be generated in the following situations:

  • If the heap size reaches the maximum heap size
  • If the thread pool reaches the threshold
  • If the CPU usage reaches 90%
  • If a servlet error occurs
  • If a connection timeout occurs
  • If there are threads waiting for connection
  • If more than 1000 prepared statements are discarded
  • If an application tries to use an invalidated session
  • If there is no room for a new session
  • If a hung thread is declared
  • If transactions are rolled back
  • If transactions timeout

You can also define your own rules according to the indicator of their system. For example, you can set a proper threshold for response time of each servlet as below.

rule "ServletEvent"
   ServlentEvent(responseTime>1500, name=="Trade");
   String description = "response time extends the limits";

processData.addAlert("servlet", description);}

Benefits and features

The Performance Tuning Toolkit offers several benefits:

  • Lightweight software for WebSphere Application Server so that you do not need to install or integrate anything to the server side
  • Real-time monitoring and interactive analysis
  • Rule-based events processing, which allows users add their own diagnostics logic
  • High expansibility
  • Easy-to-use interface

It has the following key functions:

  • Data collection from PMI and consolidation of this data into a data cube
  • Rule-based event processing
  • Analysis by graphic views and drill-down to the detailed data (see Figures 2 and 3)
    Figure 2. Graphical view analysis
    panel showing three performance graphs
    panel showing three performance graphs
    Figure 3. Drilling down to detailed data
    panel showing table of performance values
    panel showing table of performance values
  • Generation of artifacts (thread dump and heap dump) or enabling trace

Installation and use


To install the Performance Tuning Toolkit, download and extract the compressed file. To start it, click the PerfTuningToolkit.exe file.

Using the Performance Tuning Toolkit

First, you add one or more hosts and then configure the connections. After you set up the connection, the toolkit automatically gets the topology and server information and stores them in the toolkit. You can add, edit, or delete a host at any time.

Adding a host

Click the Add a new host button to create a new host (Figure 4).

Figure 4. Adding a new host
window for adding a new host

Enter the information for the host, and select the Security enabled box if security is enabled. Click OK. The host is shown on the left, in the Hosts panel (Figure 5).

Figure 5. Specifying host information
dialog for specifying host information
dialog for specifying host information

Connecting to a host

In the left host panel, double-click the host name to connect to the host. You are then asked if you want to customize the PMI settings with the displayed strings. Click Yes to connect to and monitor the server.

Obtaining information about hosts

Click the server name in the topology panel. The Monitor window opens on the right side Hosts panel (Figure 6).

Figure 6. Monitoring the host
graphs showing host performance details
graphs showing host performance details

The Monitor windows show the statistical information and the trend curves. You can easily analyze the trend in many aspects and find the potential problems in servers. You can use the tabs at the bottom of the page to get more information. On each tab, you can expand or collapse items, depending on what you need.

Monitoring times

Several graphs on the Monitor window can be used to display information about times: Servlet Response Time, Transaction Response Time, Jdbc Response Time, Servlet Throughput, Transaction Throughput, Jdbc Throughput, Concurrency, Http Session, CPU usage, Java Heap, and Alert (Figure 7).

Figure 7. Monitoring times
Monitoring times
Monitoring times

Combining intervals

The combine interval options control the interval of the monitor curve. There are three options: AutoAjustInterval, CombineInterval, and DisintegrationInterval. When you click one of these options, the curve timeline interval changes immediately, and the curve is redrawn. See Figure 8.

Figure 8. Combining intervals
graphs showing combined intervals
graphs showing combined intervals

The Performance Tuning Toolkit also provides debug assistance, such as generate a thread dump, generate a heap dump, and enable trace.

Generating dumps

To generate a dump, select the server in the Hosts panel, and then select Generate Thread Dump or Generate Heap Dump from the Operation menu (Figure 9).

Figure 9. Generating a dump
screen showing menu for generating a dump
screen showing menu for generating a dump

Enabling trace

To enable trace, select the server in the Hosts panel, and then select Enable Trace from the Operation menu (Figure 10).

Figure 10. Enabling trace
screen showing menu for enabling trace
screen showing menu for enabling trace

In the Trace Detail window, you can select an existing trace type or manually enter the trace information in the trace dialog (Figure 11).

Figure 11. Entering trace information
dialog panel for inputting trace information
dialog panel for inputting trace information

Editing the rules file

The customized rules for detecting performance degradation and locating bottlenecks are in the rules file. To examine or edit the rules file, select Edit Rules from the Analysis menu. Figure 12 shows a rules file.

Figure 12. Editing the rules file
window for editing rules
window for editing rules

The syntax is flexible and easy to use. Over time, more rules will be consolidated into the toolkit.


We are eager to hear your comments about this technology. We encourage you to post them on this forum.

Downloadable resources

Related topics


Sign in or register to add and subscribe to comments.

ArticleTitle=WebSphere Application Server Performance Tuning Toolkit