WebSphere v6.1 Performance Tuning and Methodology

Course

In Bath

Price on request

Description

  • Type

    Workshop

  • Location

    Bath

  • Duration

    3 Days

This course provides in depth information on how to tune WebSphere, database server, web server and the operating system to extract the last drop of performance. It covers performance tuning methodology, how to detect a bottleneck and common problems and solutions. After taking this class, students will be able to methodically create a stress testing plan and find bottlenecks and. Suitable for: This course is for QA team members, developers, architects, consultants and IT specialists.

Facilities

Location

Start date

Bath (Somerset)
See map
11 Kingsmead Square, BA1 2AB

Start date

On request

About this course

Delegates should have good experience with WebSphere application development and/or QA. Some introductory WebSphere administration knowledge required.

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Course programme

AUDIENCE: This course is for QA team members, developers, architects, consultants and IT specialists.
PREREQUISITES: Delegates should have good experience with WebSphere application development and/or QA. Some introductory WebSphere administration knowledge required.
DURATION: 3 days. Hands on.
OBJECTIVES: This course provides in depth information on how to tune WebSphere, database server, web server and the operating system to extract the last drop of performance. It covers performance tuning methodology, how to detect a bottleneck and common problems and solutions. After taking this class, students will be able to methodically create a stress testing plan and find bottlenecks and resolve them. The students will perform hands on lab to create test scripts, perform stress test and gather key performance numbers. The class is generic as far as the stress testing tool is concerned. The concepts learned in this class can be used with any tool of choice. On completion of the course delegates will be able to:
- Understand the performance testing methodology
- How to standardize the terminology for better communication.
- How to methodically stress test and discover bottlenecks.
- How to measure if a system will meet performance expectations.
- Identify potential bottlenecks in WebSphere® applications.
- Analyze application performance with Websphere performance tools.
- Create test cases.
- Improve application databases configurations for optimal performance.
- Know how to monitor applications after deployment.
COURSE CONTENT:
1. Performance Tuning Foundation
Topics
List of Terms
Load
Active Load
Concurrent Load
Peak Load
Throughput
Throughput Curve
The significance of throughput
Response time
Response Time Curve
Think time
User Ramp Up
Saturation
Response time at system saturation
Response time past the buckle point
Interpreting response time trends
Performance Acceptance Criteria
Measure your system s steady state
Path length
Bottleneck
Dealing with a bottleneck
Scaling
Horizontal and vertical scaling
Analyze before trying to scale
Calculating QA User Count
Accommodating QA User Count
Scaling Up QA Configuration
Bottom Up and Top Down
Bottom Up Testing
Summary


2. WebSphere Queuing Network
Topics
The WebSphere Queuing Network
Basic Tuning Principle
Terms
Open/Closed Queues in WebSphere
Queue Parameter List
IBM HTTP Server 6.0/Apache 2.x
Windows Thread Control
UNIX Threads and Process Control
Configuring MaxClients or ThreadsPerChild
Backlog Queue
Web Container Transport Chain
Configure Transport Chain
TCP Inbound Channel (TCP_2)
Thread Pool
Back to TCP Inbound Channel
HTTP Inbound Channel (HTTP_2)
EJB Method Call Queue
Setting the ORB Queue Values
Data Source Queue
Prepared statements and caching
Configuring Data Source
Configuring Connection Pool Size
Summary


3. Performance Data Gathering
Problem Determination v.s. Performance Tuning
What May Affect the WebSphere Performance
Performance Monitoring and Tuning in WebSphere
Performance Monitoring Infrastructure (PMI)
How PMI Works
PMI Metrics Thread Pools
PMI Metrics Web Application
PMI Metrics - Transaction
PMI Metrics - EJB
PMI Metrics Data Source
PMI Metrics Memory Usage
PMI Metrics HTTP Session
Monitoring Performance
JVMPI Monitoring
JVMPI Metrics
Tivoli Performance Viewer
Tasks
Enable Performance Monitoring
Enabling JVMPI data reporting
Launching Tivoli Performance Viewer
Select Performance Data
Monitor IBM HTTP Server
IBM HTTP Server status
Summary


4. Memory and the IBM Java Virtual Machine
What is this Chapter About?
Performance Considerations
Performance Concerns
The Heap
Heap Limit
Default Initial Heap Size
Heap Top
Default Maximum Heap Size
Configure the heap in WebSphere
Allocation Failure
Garbage Collection
Enable verbose garbage collection
Analyzing Verbose GC - IBM
Analyzing Verbose GC - Sun
Thread Local Heap (TLH)
Memory Tuning Goals
Effect of Initial Heap Size on GC
Controlling the GC Timings
Optimizing GC
Heap Regions IBM JDK
Solaris Threading Model

5. Monitoring CPU and Memory Using Rational Application Developer
What is this Chapter About?
WebSphere Profiling Architecture
Architecture
Tasks
Install the IBM Agent Controller - Windows
Install the IBM Agent Controller - UNIX
Start the IBM Agent Controller
Enable profiling on the application server
Begin Profiling
Attach a monitor to a JVM
Class Filter Option
Profile Type Option
Start monitoring
Detecting Memory Leak
Class Statistics
Detecting Heavy CPU Usage
End to End Call Chain Analysis
Execution Table
Refresh Views
Save performance data
Stop Profiling

6. Performance Tuning Techniques

Topics
Basic Methodology
Problem Areas
CPU utilization
The components of CPU usage
Measure CPU utilization everywhere
Symptoms of underutilization
What causes underutilization?
Network capacity problem?
Synchronization problem?
Slow external resource?
Is the test pushing the system hard enough?
Does your system scale?
Symptoms of burstiness
Infrequent synchronization problem?
Test driver synchronization problem?
Slow back-end systems?
Slow garbage collection?
Timeout problems?
Erratic network traffic?
Symptoms of over utilization
High User CPU
High System CPU
High Wait CPU
Server hanging
Thread dump in WebSphere v6
Analyzing a Thread Dump
Uneven cluster loading
Load balancer configured correctly?
Plan of attack
Tuning the WebSphere Queuing Network
Tuning Static Content
Recall: Basic Tuning Principle
EJB instance cache size
Disable Web Application Auto Reload
Enable Pass By Reference
Relax Transaction Isolation Level
Optimize Access Intent
Cache JNDI Objects
Database Connection Handling
Prepared Statement Caching
Tuning the Prepared Statement Cache

7. Troubleshooting
Objectives
Problem Determination
Error Reporting
Networking Problems and Solutions
HTTP Request Problems
HTTP Request Solutions
Other Solutions
Tools for Resolving WebSphere Problems
Admin Console Messages
Configuration Problems
Runtime Messages
Message Details
Important Log Files
Configuring Log Files
Viewing Logs
Event Types
Log Detail Levels
Log File Format
Configuring Tracing
Reading Java Exceptions
Common Exceptions
Server Does Not Start
AST
Log View of AST
dumpNameSpace Tool
Debugging
IBM Tools
Troubleshooting Questions
Troubleshooting Answers
Reference


8. Network Deployment Architecture
Workload Management (WLM) Basics
Role of Network Deployment Software
Similarities With Base Edition
Differences With Base Edition
Coexistence With Base Edition
Network Deployment Cell
Deployment Manager and Node Agents
Configuration File Synchronization
Synchronization Problems
WebSphere Profiles - Recap
Network Deployment Profiles
Federating Nodes
Federating an Application Server Profile
Federating a Custom Profile
Adding Nodes
Controlling Deployment Manager and Node Agents
Automatically Starting Servers
Types of WLM
Web Server WLM
Web Module WLM Architecture
Weighted Routing
State Management
Server Affinity
Weighted Routing with Server Affinity
EJB WLM
References

9. WebSphere High Availability Overview
Workload Management and Failover in WebSphere
Server Affinity
Problems With Server Affinity
Server Affinity With Failover
Data Replication Service
Number of Replicas
Replication Security
Enabling Server Affinity Failover
Session Database
Session Tuning
Distributed Session Tuning
Introduction - HAManager
HAManager
HAManager Messaging Service
HAManager - Functioning
Core Group
Core Group Coordinator

10. Dynamic Caching for Web Applications
Introduction
Configuring Dynamic Cache
How Caching Works
Structure of cachespec.xml
URL Based Caching
Session Based Cache
Cache Priority
Configuring Cache Manager
Edge Side Include (ESI) Cache
Configuring ESI Cache

11. IBM Heap Dump Facility
Topics
What is a Heap Dump
Enabling heapdumps on WAS V6.0
Causing Heapdumps
Understanding Heapdumps
Using HeapDiff
Using HeapDiff to Detect Memory Leak

12. Performance Advisors Overview
Performance Advisors
Performance Advisors in Tivoli Performance Viewer (TPV)
Performance & Diagnostic Advisor
Enabling and Configuring Performance & Diagnostic Advisor
Performance & Diagnostic Advisor
Reference

13. IBM Support Tools
Topics
Source of Errors
Support Tools
IBM Support Tools
IBM Support Assistant (ISA)
IBM Electronic Services

Appendix A. AIX Monitoring Tools and Tuning
topas
Advanced topas Use
svmon
Generating svmon Reports
The monitor Tool
Network Buffer Tuning
Network Dropped Packets Resolution
Network Statistics Report
TCP/UDP Buffer Tuning
System Activity Report
Disk I/O Report
Reduce IO Bottleneck
Using filemon
Using vmstat
Tuning VMM Policy

Appendix B. Solaris Monitoring and Tuning
The vmstat Command
The mpstat Command
The iostat Command
The netstat Command
netstat (cont.)
Increasing the Connection Backlog
Minimize Packet Fragmentation
Reduce Socket Overhead
Recover from Browser Disconnects
Kernel Tuning
Minimize Page Scanning

Appendix C. Linux Monitoring and Tuning
Monitoring Tools
The uptime Command
The top Command
The iostat Command
The vmstat Command
The pmap Command
Kernel Parameter Tuning
Increase Maximum File Descriptor Limit
Increase Maximum File Descriptor Limit
Network Tuning
Network Tuning
Linux Tuning Tips
Linux Tuning Tips
Linux Tuning Tips


Appendix D. Sun Java System Web Server 6.0 Tuning
Sun Java System Web Server v6.0 - Basic Concepts
Monitoring Using stats-xml
Monitoring Using perfdump
Connection Tuning
Socket Listen Tuning
Session Thread Tuning
Keep Alive Tuning
Static File Cache Tuning
DNS Lookup Tuning


Appendix E. DB2 Performance Tuning Techniques
Logs
Separate DB2 log files from the physical database
Configuration Advisor
Launch Configuration Advisor
DB2/Linux communication
MaxAppls
MaxAgents
Buffer Pool Tuning
Configuring buffpage
Evaluating the buffer pool size
Monitoring the database buffer pool
Query optimization level
Configuring query optimization level
Prepared Statement Caching by DB2
reorgchk
MinCommit
Determining the need to change MinCommit
Guidelines
Session Affinity
Session Cache
Configuring Session Management
Configuring the Session Database
Tuning Session Database I/O
Calculating Average Session Size
Tuning Session Database I/O DB2 Specific Notes

WebSphere v6.1 Performance Tuning and Methodology

Price on request