Performance tuningtoolkitintroduction

6,328 views 33 slides Apr 02, 2012
Slide 1
Slide 1 of 33
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33

About This Presentation

WebSphere performance tuning toolkit QuickStart


Slide Content

© 2011 IBM Corporation
WAS ENT Persona Test
WebSphere Application Server
Performance Tuning Toolkit
Feb, 2012

© 2012 IBM Corporation
WAS ENT PersonaTest
2
Why we use this toolkit ?
Application Cluster #1
HTTP Traffic
Proxy Server
Application Cluster #2
Application Cluster #3
Objective Functions
Find error as soon as
it occurs
 Monitor the servlet errors,
transaction rollback, transaction
timeout, JDBC connection timeout,
JCA connection errors, thread hung
and failed proxy request.
Find potential
problems
 Show detailed status of system
with easily understood charts and
forms
 Detect the abnormal symptoms
according to some user defined
rules
Accelerate
performance tuning
process
 Tune all the servers in a
centralized view.
 Run tuning scripts within the
workbench.
Facilitate problems
determination
 Generate thread dump and heap
dump
 Enable runtime trace
 Extract connection pool contents
Data processing
and report
 Provide good report.
 Support both online and
offline analysis
1) Friendly and easily understood UI
2) No additional effort to install or configure

© 2012 IBM Corporation
WAS ENT Persona Test
3
Quick Start : Launch the Performance Tuning Toolkit
Unzip the zip file and launch the PerfTuningToolkit.exe. You will see the workbench!

© 2012 IBM Corporation
WAS ENT Persona Test
4
Quick Start : Connect to your WAS
From the Hosts View, double click the new created host , and click “Ok” in next prompt dialog.

© 2012 IBM Corporation
WAS ENT Persona Test
5
Quick Start : Start Monitoring
Double click the added host and click “OK” in next message box to start all the servers

© 2012 IBM Corporation
WAS ENT Persona Test
6
Quick Start : Monitor the dashboard
1.The dashboard will monitor all the key status of servers (include Application Servers and Proxy
Servers) in the latest monitoring interval (the monitor interval is multiple of the data collection
interval which was set in the preference panel)
2.The color of performance data will turn red if some abnormal events were detected in current
monitoring interval, it only represent the current status. There will also be a warning mark in the
second column as long as any error ever occurs and it will leave unless you clear it. So the
warning marks can represent history abnormal events.
1. Performance
2. Errors
3. System status
4. Customized alert (rule based)

© 2012 IBM Corporation
WAS ENT Persona Test
7
Quick Start : Monitor a server - 1
Double click any panel in the dashboard, you will go to the monitor page of that server

© 2012 IBM Corporation
WAS ENT Persona Test
8
Quick Start : Monitor a server - 2
Adjust the statistics interval: this function will be useful when the curve jitter violently

© 2012 IBM Corporation
WAS ENT Persona Test
9
Quick Start : Monitor a server - 3
Hidden the chart that is useless for you, this will not affect the data page

© 2012 IBM Corporation
WAS ENT Persona Test
10
Quick Start : View detailed data of each component
Switch to detail data page by clicking the point in the monitor page, or click that tabs at the bottom

© 2012 IBM Corporation
WAS ENT Persona Test
11
Quick Start : Interval concept of performance monitoring
Pay attention to the interval of Dashboard, Charts and the Data Collections.
Monitoring Interval:
1). Multiple of Data Collection Interval.
2). Can be adjusted at any time
3). Can only be up to the current time
Analysis Interval:
1). Multiple of Data Collection Interval.
2). Can be adjusted at any time
3). The end time may not be the current
time
Data Collection Interval:
1). Can only be set in the preference
panel.
2). Can not be adjusted at run time.
Monitoring Interval
Analysis Interval
Data Collection Interval

© 2012 IBM Corporation
WAS ENT Persona Test
12
Quick Start : Tuning servers - 1
From the “Tuning parameters” view, you can retrieve parameters from the servers, modify
them, and update the servers

© 2012 IBM Corporation
WAS ENT Persona Test
13
Quick Start : Tuning servers - 2
For the parameters that not contains in the “Tuning Parameters” view, users can user scripts to change
them.

© 2012 IBM Corporation
WAS ENT Persona Test
14
Quick Start : Tuning servers - 3
Input the optional parameters if need. Click “Ok” to run the script.

© 2012 IBM Corporation
WAS ENT Persona Test
15
Quick Start : Edit the rules - 1
Data from all components will go through the rule engine. Some rules has been defined in the rule file
The existing rules:
•If the used heap reaches the 85% of maximum heap size, it will generate a runtime alert.
•If the used thread pool reaches 90% of the max pool size, it will generate a threadpool alert.
•If the average CPU usage reaches 90%, it will generate a runtime alert.
•If some servlet errors occur, it will generate a servlet alert.
•If some JDBC connection timeout occur, it will generate a connection alert
•If there are more then 1000 prepared statement discarded, it will generate a connection alert
•If there are some thread waiting for connection, it will generate a connection alert
•If some JCA connection error occur, it will generate a JCA alert
•If there is no room for new session, it will generate a session alert
•If some hung threads are declared, it will generate a threadpool alert
•If some transactions rolled back, it will generate a transaction alert
•If some transactions timeout, it will generate a transaction alert
•If some proxy request failed, it will generate a proxy alert
•If a servlet performance decline detect it will generate a servlet alter
•If a jdbc performance problem detect, it will generate a connection pool alert

© 2012 IBM Corporation
WAS ENT Persona Test
16
Quick Start : Edit the rules - 2
Users can modify these rules or create their own rules in the rule editor.

© 2012 IBM Corporation
WAS ENT Persona Test
17
Quick Start : Other operations - 1
Users can generate thread dump, heap dump, get connection contents and enable trace when
connected to the cell.

© 2012 IBM Corporation
WAS ENT Persona Test
18
Quick Start : Other operations - 2
GUI of connection content panel. More and more functions will be added to facilitate the performance
problem determination

© 2012 IBM Corporation
WAS ENT Persona Test
19
Quick Start : Generate report
Generate a report for a record

© 2012 IBM Corporation
WAS ENT Persona Test
20
Quick Start : Change the preference settings if need (Optional)
Click the “Preference” button to change the preferences if needed

© 2012 IBM Corporation
WAS ENT Persona Test
21
Summary
Functions Components
Performance Monitoring  Dashboard (key status of all servers)
 Monitor page (chart of components of one server)
 Data page (detailed page of components)
Performance Tuning  “Tuning Parameters” view (tune common server parameters)
 Scripts view (tune other parameters)
Health Check  Rule engine (process data)
 Rule editor (edit rules)
Operations  Dump agent (generate thread dump and heap dump)
 Trace agent (enable trace)
 Connection pool agent (extract the connection pool contents)
Generate Report  Report engine (generate, export and print report)

© 2012 IBM Corporation
WAS ENT Persona Test
22
Workshop: Connection Leak Detection
(Optional)

© 2012 IBM Corporation
WAS ENT Persona Test
23
Setup the Topology :
1. Application Server: WebSphere
Application Server version 7.0 or later.
2. Data Base: DB2 v9.7 or later.
3. Use the latest Jmeter to as the stress
client.
4. Download the Websphere Application
Server Performance Tuning Toolkit.
Application Server Cluster
Test Client
Proxy Server
Dmgr
Data Base
Server5
Server4 Server6
Server1 Server3
Server2
Install the test application and start
stress :
1. A separate application installation
guide will be provided for reference
2. A Jmeter script file and Jmeter user
guide will be provided for reference
Scenario description :
1. Use a modified Daytrader2.0
benchmark to simulate application with
a connection leak problem.
2. Use PTT detect the connection leak
problem
Workshop : connection leak problem detection (Optional)

© 2012 IBM Corporation
WAS ENT Persona Test
24
Workshop : connection leak problem detection (Optional)
Do a brief testing without triggering the connection leak problems and make sure no problems
are shown in the dashboard

© 2012 IBM Corporation
WAS ENT Persona Test
25
Workshop : connection leak problem detection (Optional)
Trigger the connection leak in the “Server” tab of Daytrader application

© 2012 IBM Corporation
WAS ENT Persona Test
26
Workshop : connection leak problem detection (Optional)
Some Jdbc problems will be detected on the dash board after triggering the connection leak
problem

© 2012 IBM Corporation
WAS ENT Persona Test
27
Workshop : connection leak problem detection (Optional)
Go to monitor page to check the alerts
Go to detailed data page to check the alert contents

© 2012 IBM Corporation
WAS ENT Persona Test
28
Workshop : connection leak problem detection (Optional)
Go to the jdbc connection pool detailed page to check the connection usage info

© 2012 IBM Corporation
WAS ENT Persona Test
29
Workshop : connection leak problem detection (Optional)
Enable the “Connection Leak” trace to collect the connection allocation stack trace

© 2012 IBM Corporation
WAS ENT Persona Test
30
Workshop : connection leak problem detection (Optional)
After a period of time, Some connections will time out which will lead to both “connection timeout” and
“transaction rollback” errors.
Some jdbc operations are performed in MDB, that is why the servlet error is much less then the other 2.

© 2012 IBM Corporation
WAS ENT Persona Test
31
Workshop : connection leak problem detection (Optional)
Check the connection pool content from the context menu of the “sick” server

© 2012 IBM Corporation
WAS ENT Persona Test
32
Workshop : connection leak problem detection (Optional)
Check the connection pool status, Pay attention to connection used time and connection used thread.

© 2012 IBM Corporation
WAS ENT Persona Test
33
Workshop : connection leak problem detection (Optional)
You can also get the allocation stack trace which will tell you where you allocate the leaked
connection. So it will be easy to fix the problems.
Note that: the allocation stack trace only be collected after you enable the connection leak trace as we
did in last step.