SlideShare a Scribd company logo
Hands-on Performance Workshop 
The science of performance 
Mike Croft
Who Am I? 
• C2B2 Expert Support consultant 
• Ex-IBM 
• Snowboarder 
• @croft
Who are you?
Why are we here? 
• Hands-on performance! 
– Hands on what? 
• See what tools are available 
• Get experience of using some tools 
• Learn how to apply knowledge 
• Why do you want to be here?
Agenda 
• Introduction 
• Environment setup 
• Performance Overview 
• Collecting Data 
– Presentation 
– Practical 
• How do we interpret the data? 
– Tools 
• Example app analysis
Environment Setup 
Hands-on Performance Workshop
Environment Setup 
• Download Instructions and follow the first part 
https://s3-eu-west-1.amazonaws.com/jaxlondon2014/instructions.docx 
• Make sure all necessary resources are downloaded 
• Make sure the app is deployed and JMeter can run 
load through it
Performance Overview 
Hands-on Performance Workshop
Performance Overview
Performance Overview 
Performance Factors 
• Raw Algorithmic Performance 
• Resource Limitations 
– Not enough cpu, disk, memory 
• Resource Contention 
– Locks 
• IO Latency 
– Network, Disk
Performance Overview 
Latency Factors 
• Network Distance 
• Network Reliability 
• Data Size 
• Operation Granularity 
• Resource Contention 
• JVM GC
Performance Overview
Performance Overview
Collecting Data 
Hands-on Performance Workshop
Collecting Data 
• Garbage Collection 
• Verbose GC 
• Heap size 
– New size and old size 
– Before collection 
– After collection 
• Pause time
Collecting Data 
• Thread dumps 
– Kill -3 
– JStack 
• Thread state 
– Wait 
– Sleep 
– Blocked 
– Running 
• Full stack trace
Collecting Data 
• Heap dumps 
• Entire contents of the heap 
– Very Large! 
– Can take time to collect on large 
heaps 
• Can auto-dump on OOME
Interpreting Data 
Hands-on Performance Workshop
Interpreting Data 
• Tools 
– Live monitoring 
• VisualVM 
• MissionControl 
• JMX 
– Historical analysis 
• Memory Analyzer Tool 
• Flight Recorder (commercial) 
• Threadlogic 
• GCViewer

More Related Content

POTX
Mobile 3: Launch Like a Boss!
PDF
Optimising for Performance
PDF
Next Generation DevOps in Drupal: DrupalCamp London 2014
PDF
MySQL 和 InnoDB 性能
PDF
Web Performance Part 3 "Server-side tips"
PPTX
Webinar: Capacity Planning
PPTX
Drupal performance
PPTX
Ansible for large scale deployment
Mobile 3: Launch Like a Boss!
Optimising for Performance
Next Generation DevOps in Drupal: DrupalCamp London 2014
MySQL 和 InnoDB 性能
Web Performance Part 3 "Server-side tips"
Webinar: Capacity Planning
Drupal performance
Ansible for large scale deployment

What's hot (17)

PPTX
Rebooting design in RavenDB
PPTX
Repository performance tuning
PDF
The Practice of Alluxio in JD.com
PDF
London HUG 8/3 - Nomad
PPTX
OSGifying the repository
PDF
MySQL Query Optimization (Basics)
PDF
Webinar - DreamObjects/Ceph Case Study
PPTX
Staying friendly with the gc
PDF
Know thy cost (or where performance problems lurk)
PPTX
Walking the Walk: Developing the MongoDB Backup Service with MongoDB
PPTX
Webinar: Capacity Planning
PDF
Hosted PostgreSQL
PDF
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
PDF
Bacd zenoss
PDF
HashiCorp at Just Eat
PPTX
WiredTiger & What's New in 3.0
PPT
MySQL HA Percona cluster @ MySQL meetup Mumbai
Rebooting design in RavenDB
Repository performance tuning
The Practice of Alluxio in JD.com
London HUG 8/3 - Nomad
OSGifying the repository
MySQL Query Optimization (Basics)
Webinar - DreamObjects/Ceph Case Study
Staying friendly with the gc
Know thy cost (or where performance problems lurk)
Walking the Walk: Developing the MongoDB Backup Service with MongoDB
Webinar: Capacity Planning
Hosted PostgreSQL
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
Bacd zenoss
HashiCorp at Just Eat
WiredTiger & What's New in 3.0
MySQL HA Percona cluster @ MySQL meetup Mumbai
Ad

Viewers also liked (8)

PPTX
Hands-on Performance Tuning Lab - Devoxx Poland
PPTX
Monitoring Oracle SOA Suite - UKOUG Tech15 2015
PPTX
Oracle SOA Suite Performance Tuning- UKOUG Application Server & Middleware SI...
PPTX
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
PPTX
Monitoring Oracle SOA Suite
PDF
Thinking of Upgrading to Oracle SOA Suite 11g? Knowing The Right Steps Is Key...
PPTX
opentextrelease16abetterwaytowork-160411183307
PPT
Oracle SOA Suite in use – a practical experience report
Hands-on Performance Tuning Lab - Devoxx Poland
Monitoring Oracle SOA Suite - UKOUG Tech15 2015
Oracle SOA Suite Performance Tuning- UKOUG Application Server & Middleware SI...
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
Monitoring Oracle SOA Suite
Thinking of Upgrading to Oracle SOA Suite 11g? Knowing The Right Steps Is Key...
opentextrelease16abetterwaytowork-160411183307
Oracle SOA Suite in use – a practical experience report
Ad

Similar to Hands-on Performance Workshop - The science of performance (20)

PPTX
MongoDB Capacity Planning
PPTX
Capacity Planning
PDF
Java Performance Tuning
PDF
Mtc learnings from isv & enterprise interaction
PPTX
Mtc learnings from isv & enterprise (dated - Dec -2014)
PDF
Development of concurrent services using In-Memory Data Grids
PPTX
Azug - successfully breeding rabits
PDF
A Taste of Monitoring and Post Mortem Debugging with Node
PDF
Q con shanghai2013-罗婷-performance methodology
PDF
Control and monitor_microservices_with_microprofile
PDF
Oracle GoldenGate Architecture Performance
PPTX
DockerCon Europe 2018 Monitoring & Logging Workshop
PPTX
Glass fish performance tuning tips from the field
PDF
DrupalCamp LA 2014 - A Perfect Launch, Every Time
PPTX
From Pilot to Product - Morning@Lohika
PDF
Application Profiling for Memory and Performance
PDF
The Diabolical Developers Guide to Performance Tuning
PPTX
Profiling and Tuning a Web Application - The Dirty Details
PPTX
SQL Explore 2012: P&T Part 1
PDF
Slides for the Apache Geode Hands-on Meetup and Hackathon Announcement
MongoDB Capacity Planning
Capacity Planning
Java Performance Tuning
Mtc learnings from isv & enterprise interaction
Mtc learnings from isv & enterprise (dated - Dec -2014)
Development of concurrent services using In-Memory Data Grids
Azug - successfully breeding rabits
A Taste of Monitoring and Post Mortem Debugging with Node
Q con shanghai2013-罗婷-performance methodology
Control and monitor_microservices_with_microprofile
Oracle GoldenGate Architecture Performance
DockerCon Europe 2018 Monitoring & Logging Workshop
Glass fish performance tuning tips from the field
DrupalCamp LA 2014 - A Perfect Launch, Every Time
From Pilot to Product - Morning@Lohika
Application Profiling for Memory and Performance
The Diabolical Developers Guide to Performance Tuning
Profiling and Tuning a Web Application - The Dirty Details
SQL Explore 2012: P&T Part 1
Slides for the Apache Geode Hands-on Meetup and Hackathon Announcement

More from C2B2 Consulting (20)

PDF
Advanced queries on the Infinispan Data Grid
PPTX
Through the JMX Window
PPTX
Building WebLogic Domains With WLST
PPTX
Jsr107 come, code, cache, compute!
PPT
JBoss Clustering on OpenShift
PDF
Dr. Low Latency or: How I Learned to Stop Worrying about Pauses and Love the ...
PDF
Through the JMX Window
PDF
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
PDF
Java Middleware Surgery
PPTX
Jax London 2013
PPTX
'Deploying with GlassFish & Docker'
PDF
'JMS @ Data Grid? Hacking the Glassfish messaging for fun & profit'
PDF
'New JMS features in GlassFish 4.0' by Nigel Deakin
PPTX
Coherence sig-nfr-web-tier-scaling-using-coherence-web
PPTX
JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
PPT
GeeCon- 'www.NoSQL.com' by Mark Addy
PPTX
Monitoring VMware vFabric with Hyperic and Spring Insight
PPTX
Middleware Expert Support Presentation
PPTX
Monitoring Production JBoss with JBoss ON
PDF
Pushing Oracle Coherence Events to Web Browsers Using HTML5, Web Sockets and ...
Advanced queries on the Infinispan Data Grid
Through the JMX Window
Building WebLogic Domains With WLST
Jsr107 come, code, cache, compute!
JBoss Clustering on OpenShift
Dr. Low Latency or: How I Learned to Stop Worrying about Pauses and Love the ...
Through the JMX Window
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
Java Middleware Surgery
Jax London 2013
'Deploying with GlassFish & Docker'
'JMS @ Data Grid? Hacking the Glassfish messaging for fun & profit'
'New JMS features in GlassFish 4.0' by Nigel Deakin
Coherence sig-nfr-web-tier-scaling-using-coherence-web
JUDCon 2013- JBoss Data Grid and WebSockets: Delivering Real Time Push at Scale
GeeCon- 'www.NoSQL.com' by Mark Addy
Monitoring VMware vFabric with Hyperic and Spring Insight
Middleware Expert Support Presentation
Monitoring Production JBoss with JBoss ON
Pushing Oracle Coherence Events to Web Browsers Using HTML5, Web Sockets and ...

Recently uploaded (20)

PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Nekopoi APK 2025 free lastest update
PPTX
Introduction to Artificial Intelligence
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
Design an Analysis of Algorithms II-SECS-1021-03
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Odoo POS Development Services by CandidRoot Solutions
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Design an Analysis of Algorithms I-SECS-1021-03
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Nekopoi APK 2025 free lastest update
Introduction to Artificial Intelligence
Upgrade and Innovation Strategies for SAP ERP Customers
How to Migrate SBCGlobal Email to Yahoo Easily
PTS Company Brochure 2025 (1).pdf.......
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Odoo Companies in India – Driving Business Transformation.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
CHAPTER 2 - PM Management and IT Context
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Design an Analysis of Algorithms II-SECS-1021-03

Hands-on Performance Workshop - The science of performance

  • 1. Hands-on Performance Workshop The science of performance Mike Croft
  • 2. Who Am I? • C2B2 Expert Support consultant • Ex-IBM • Snowboarder • @croft
  • 4. Why are we here? • Hands-on performance! – Hands on what? • See what tools are available • Get experience of using some tools • Learn how to apply knowledge • Why do you want to be here?
  • 5. Agenda • Introduction • Environment setup • Performance Overview • Collecting Data – Presentation – Practical • How do we interpret the data? – Tools • Example app analysis
  • 6. Environment Setup Hands-on Performance Workshop
  • 7. Environment Setup • Download Instructions and follow the first part https://s3-eu-west-1.amazonaws.com/jaxlondon2014/instructions.docx • Make sure all necessary resources are downloaded • Make sure the app is deployed and JMeter can run load through it
  • 8. Performance Overview Hands-on Performance Workshop
  • 10. Performance Overview Performance Factors • Raw Algorithmic Performance • Resource Limitations – Not enough cpu, disk, memory • Resource Contention – Locks • IO Latency – Network, Disk
  • 11. Performance Overview Latency Factors • Network Distance • Network Reliability • Data Size • Operation Granularity • Resource Contention • JVM GC
  • 14. Collecting Data Hands-on Performance Workshop
  • 15. Collecting Data • Garbage Collection • Verbose GC • Heap size – New size and old size – Before collection – After collection • Pause time
  • 16. Collecting Data • Thread dumps – Kill -3 – JStack • Thread state – Wait – Sleep – Blocked – Running • Full stack trace
  • 17. Collecting Data • Heap dumps • Entire contents of the heap – Very Large! – Can take time to collect on large heaps • Can auto-dump on OOME
  • 18. Interpreting Data Hands-on Performance Workshop
  • 19. Interpreting Data • Tools – Live monitoring • VisualVM • MissionControl • JMX – Historical analysis • Memory Analyzer Tool • Flight Recorder (commercial) • Threadlogic • GCViewer

Editor's Notes

  • #10: Performance in middleware comes down to: How fast does a single transaction take to execute? Faster Performance = Happier Customers Faster Performance = More Transactions HOWEVER Performance is the P in R-A-S-P and the other letters should be ignored to your peril! There is always a trade-off to consider!
  • #12: LATENCY = Time delay in requesting an operation and it being initiated Key factor in large scale distributed applications Typically not taken into account during development