SlideShare uma empresa Scribd logo
1 de 28
Partners:
Hints on complex system performance
optimization
Ainars Galvans
Exigen Services Latvia

December 2, 2013

www.ExigenServices.com
System Performance
Introduction: context, terms and basics

3

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Terminology

4

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Performance is:

Requirement
Number of users
Hardware spec.
“Response time”

Measurement
Throughput
CPU utilization
Response time

i.e.
time user wait for
page to load
in the browser

5

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
A simple 3-tier Web Application

Client

App.

DB

Prepare request
Response time

User Experience

Parse, process
Select or update
More Logic

Select or update
Render HTML

Render UI
Repeated
6

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
A simple 3-tier Web Application

App.
Client1

7

DB

Client2

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
With 3rd party WebServices

Client1

App.

DB

Client2

8

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Other Apps share the same DB?

App.

9

DB

CONFIDENTIAL – NOT FOR DISTRIBUTION

Other
(Corp.)
App.

www.ExigenServices.com
Performance is:

Requirement
Number of users
Hardware spec.
“Response time”

10

Measurement
Throughput
CPU utilization
Response time

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Rules of thumb

 Response time
– >2 seconds: is it all CPU time?
– 0.5-2.0 seconds: why?
– <0.5 seconds : OK

 Concurrent users
– The term is misleading
– What matters technically is throughput

 Resource utilization:
– DB CPU should be below 50%
11

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
My issue localization techniques
 First step: where (what host) is the bottleneck?
– Single user repeat the same action (i.e. with Selenium)
– Monitor “CPU time” delta (secs.), not CPU (%)
– Use excel to understand how it scales
 If it’s the App Server: analyze HTML
– FireFox “Save Page As” -> complete page
– Look for large, unused data
 If it’s DB or Web Services: analyze traffic, logs
– Put milliseconds to log files, see what takes most of it
– Look for repeated requests for single page rendering
 If it’s client (browser): profile JavaScript
– IE -> Dev. Tools (F12) -> Profiler
– Are all the JavaScripts cached (or compiled each time)?
12

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
System Performance
Performance optimization stories

13

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Locating database call issues

App.
Client1

14

DB

Client2

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Story #1: Just a few tables
 Problem description
– Web Page shows a number of tables
– Page response time is a bit above 2 seconds
– Under load DB becomes overloaded quickly
– All DB queries takes <0.1 sec
 Investigation results:
– Single page load cause about 100 select executions
– Each took 0.02 secs
– There were two distinct statements
 Solution
– After adjusting DB caching
– Response times reduced to 0.4
– Almost no load to DB under load
15

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Locating WebService call issues

Client1

App.

DB

Client2

16

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Story #2: One call only takes 0.5 secs.
 Problem description
– Web Page shows user’s data overview
– Typical customer page response time 5 seconds
– Response time up to 30 seconds for specific customers
– Under load response times don’t increase too much
 Investigation results:
– Data in tables is requested via web services
– Separate call made on each business item
– Call response time is 0.5 secs
 Solution
– Protocol adjusted to request all info with one call
– Response times reduced to 0.9
17

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Application Logic (HTML processing)

App.
Client1

18

DB

Client2

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Story #3: Tables, again: .NET
 Problem description:
– Page shows main page and a dynamic table with hot links
– Response times >5 secs.
– App server loaded significantly
– Under load response times increase
 Investigation
– In page source (HTML) I’ve discovered huge callbackstate
 Solution
– http://www.devexpress.com/Support/Center/Question/Details/Q42
5597
[Browsable(false)]
– Response times < 3secs. now

19

public string
UnboundLargeData
{ get; set; }

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Client Side (rare case though)

App.
Client1

20

DB

Client2

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Story #4: Client side
 Problem
– Visually page loads 8-12 seconds and vary
– Looks like response time depend on client workstation
 Investigation
– Server response time is only 3 seconds
– It takes browser 1-2 seconds to send request
– It takes browser 3-4 seconds to render response
– It takes more if workstation CPU is slow (<3 GHz)
 Solution
– Optimize JavaScript and remove features from page
– Browser choice recommendation
– Unfortunately: optimal client CPU recommendation
21

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
… everything. The business itself

App.
Client1

22

DB

Client2

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Story #5. The reports and queries
 Production problem
– Special feature “accounting reports” usually work 1-2 mins
– Sometimes 10 times as much
– Suspected reason a “morning lag” (all users)
 Investigation
– One report loads DB CPU to 100% for 1-2 minutes
– Only technical solution: rewrite whole app, changing DB
structure and logic
 The actual solution
– Nightly batch jobs on demand
– The default nightly batch jobs
– Daily execution only with special privileges and only one at a
time
23

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Conclusions
Localizing the problem

24

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
My issue localization techniques
 First step: where (what host) is the bottleneck?
– Single user repeat the same action (i.e. with Selenium)
– Monitor “CPU time” delta (secs.), not CPU (%)
– Use excel to understand how it scales
 If it’s the App Server: analyze HTML
– FireFox “Save Page As” -> complete page
– Look for large, unused data
 If it’s DB or Web Services: analyze traffic, logs
– Put milliseconds to log files, see what takes most of it
– Look for repeated requests for single page rendering
 If it’s client (browser): profile JavaScript
– IE -> Dev. Tools (F12) -> Profiler
– Are all the JavaScripts cached (or compiled each time)?
25

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Happy to share more details

Skype name: ainarsgalvans
Phone: +371 29432698
Facebook: Ainars Galvans
Email: Ainars.Galvans@gmail.com
Blog: find me at SoftwareTestingClub.com
26

CONFIDENTIAL – NOT FOR DISTRIBUTION

www.ExigenServices.com
Feedback

  
Partners:

Mais conteúdo relacionado

Mais procurados

What I Learned About SQL Server at Ignite 2015
What I Learned About SQL Server at Ignite 2015What I Learned About SQL Server at Ignite 2015
What I Learned About SQL Server at Ignite 2015Brent Ozar
 
SQL Server Query Tuning Tips - Get it Right the First Time
SQL Server Query Tuning Tips - Get it Right the First TimeSQL Server Query Tuning Tips - Get it Right the First Time
SQL Server Query Tuning Tips - Get it Right the First TimeDean Richards
 
Sql Server Performance Tuning
Sql Server Performance TuningSql Server Performance Tuning
Sql Server Performance TuningBala Subra
 
Locking and Race Conditions in Web Applications
Locking and Race Conditions in Web ApplicationsLocking and Race Conditions in Web Applications
Locking and Race Conditions in Web ApplicationsAndrew Kandels
 
Евгений Хыст "Application performance database related problems"
Евгений Хыст "Application performance database related problems"Евгений Хыст "Application performance database related problems"
Евгений Хыст "Application performance database related problems"Anna Shymchenko
 
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...Andrejs Prokopjevs
 
6 Steps to Performance Testing like a Pro
6 Steps to Performance Testing like a Pro6 Steps to Performance Testing like a Pro
6 Steps to Performance Testing like a ProLogiGear Corporation
 
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Andrejs Prokopjevs
 
Datasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafDatasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafMidVision
 
SQL Server Performance Tuning Baseline
SQL Server Performance Tuning BaselineSQL Server Performance Tuning Baseline
SQL Server Performance Tuning Baseline► Supreme Mandal ◄
 
High Volume Payments using Mule
High Volume Payments using MuleHigh Volume Payments using Mule
High Volume Payments using MuleAdhish Pendharkar
 
Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)
Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)
Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)Ontico
 
How to boost performance of your rails app using dynamo db and memcached
How to boost performance of your rails app using dynamo db and memcachedHow to boost performance of your rails app using dynamo db and memcached
How to boost performance of your rails app using dynamo db and memcachedAndolasoft Inc
 
Web Server Technologies II: Web Applications & Server Maintenance
Web Server Technologies II: Web Applications & Server MaintenanceWeb Server Technologies II: Web Applications & Server Maintenance
Web Server Technologies II: Web Applications & Server MaintenancePort80 Software
 
SQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceSQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceMark Ginnebaugh
 
NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...
NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...
NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...1E: Software Lifecycle Automation
 

Mais procurados (20)

What I Learned About SQL Server at Ignite 2015
What I Learned About SQL Server at Ignite 2015What I Learned About SQL Server at Ignite 2015
What I Learned About SQL Server at Ignite 2015
 
SQL Server Query Tuning Tips - Get it Right the First Time
SQL Server Query Tuning Tips - Get it Right the First TimeSQL Server Query Tuning Tips - Get it Right the First Time
SQL Server Query Tuning Tips - Get it Right the First Time
 
Key to optimal end user experience
Key to optimal end user experienceKey to optimal end user experience
Key to optimal end user experience
 
Sql Server Performance Tuning
Sql Server Performance TuningSql Server Performance Tuning
Sql Server Performance Tuning
 
Locking and Race Conditions in Web Applications
Locking and Race Conditions in Web ApplicationsLocking and Race Conditions in Web Applications
Locking and Race Conditions in Web Applications
 
Евгений Хыст "Application performance database related problems"
Евгений Хыст "Application performance database related problems"Евгений Хыст "Application performance database related problems"
Евгений Хыст "Application performance database related problems"
 
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
 
Branch office access with branch cache
Branch office access with branch cacheBranch office access with branch cache
Branch office access with branch cache
 
6 Steps to Performance Testing like a Pro
6 Steps to Performance Testing like a Pro6 Steps to Performance Testing like a Pro
6 Steps to Performance Testing like a Pro
 
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
 
Datasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafDatasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmraf
 
SQL Server Performance Tuning Baseline
SQL Server Performance Tuning BaselineSQL Server Performance Tuning Baseline
SQL Server Performance Tuning Baseline
 
High Volume Payments using Mule
High Volume Payments using MuleHigh Volume Payments using Mule
High Volume Payments using Mule
 
Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)
Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)
Metrics are Not Enough: Monitoring Apache Kafka / Gwen Shapira (Confluent)
 
IIS 6.0 and asp.net
IIS 6.0 and asp.netIIS 6.0 and asp.net
IIS 6.0 and asp.net
 
How to boost performance of your rails app using dynamo db and memcached
How to boost performance of your rails app using dynamo db and memcachedHow to boost performance of your rails app using dynamo db and memcached
How to boost performance of your rails app using dynamo db and memcached
 
Web Server Technologies II: Web Applications & Server Maintenance
Web Server Technologies II: Web Applications & Server MaintenanceWeb Server Technologies II: Web Applications & Server Maintenance
Web Server Technologies II: Web Applications & Server Maintenance
 
Sql dba training in india
Sql dba training in indiaSql dba training in india
Sql dba training in india
 
SQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceSQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database Performance
 
NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...
NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...
NOMAD ENTERPRISE & WAN CACHING APPLIANCES NETWORK OPTIMIZATION IN A CONFIGURA...
 

Destaque

Sand ریـــــــــــــــــــــگ
Sand ریـــــــــــــــــــــگSand ریـــــــــــــــــــــگ
Sand ریـــــــــــــــــــــگFahim Sediqi
 
Monigrafia de andrea gutierrez
Monigrafia de andrea gutierrezMonigrafia de andrea gutierrez
Monigrafia de andrea gutierrezcifo5bg1
 
Brest intègre le commerce à sa stratégie urbaine
Brest intègre le commerce à sa stratégie urbaineBrest intègre le commerce à sa stratégie urbaine
Brest intègre le commerce à sa stratégie urbaineIan Le Denemat
 
Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015
Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015
Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015TOPdesk
 
NOW! ELMO case study: IT solution for the EV charging network of Estonia fro...
NOW! ELMO case study:  IT solution for the EV charging network of Estonia fro...NOW! ELMO case study:  IT solution for the EV charging network of Estonia fro...
NOW! ELMO case study: IT solution for the EV charging network of Estonia fro...Jarmo Tuisk
 
INTERPERSONAL COMMUNICATION by Azfar Javed
INTERPERSONAL COMMUNICATION by Azfar JavedINTERPERSONAL COMMUNICATION by Azfar Javed
INTERPERSONAL COMMUNICATION by Azfar JavedAzfar Javed
 
La responsabilidad
La responsabilidadLa responsabilidad
La responsabilidadDaniel Puch
 
Perry Timms- The Future Charity Worker
Perry Timms- The Future Charity WorkerPerry Timms- The Future Charity Worker
Perry Timms- The Future Charity WorkerRosieHaighton
 
XP Day 2013 Experience report
XP Day 2013 Experience report XP Day 2013 Experience report
XP Day 2013 Experience report Michael Rawling
 
Unit 51 page layout & design task 2
Unit 51 page layout & design task 2Unit 51 page layout & design task 2
Unit 51 page layout & design task 2wolllfie
 
Marketing presentation
Marketing presentationMarketing presentation
Marketing presentationTahir Mushtaq
 
Вконтакте::Форматы и сегменты
Вконтакте::Форматы и сегменты Вконтакте::Форматы и сегменты
Вконтакте::Форматы и сегменты Антон Маркин
 

Destaque (18)

4
44
4
 
Sand ریـــــــــــــــــــــگ
Sand ریـــــــــــــــــــــگSand ریـــــــــــــــــــــگ
Sand ریـــــــــــــــــــــگ
 
Ediçãovídeos
EdiçãovídeosEdiçãovídeos
Ediçãovídeos
 
W3W SEASON#02 WEEK#20
W3W SEASON#02 WEEK#20W3W SEASON#02 WEEK#20
W3W SEASON#02 WEEK#20
 
Clickstream ppt copy
Clickstream ppt   copyClickstream ppt   copy
Clickstream ppt copy
 
Monigrafia de andrea gutierrez
Monigrafia de andrea gutierrezMonigrafia de andrea gutierrez
Monigrafia de andrea gutierrez
 
Brest intègre le commerce à sa stratégie urbaine
Brest intègre le commerce à sa stratégie urbaineBrest intègre le commerce à sa stratégie urbaine
Brest intègre le commerce à sa stratégie urbaine
 
Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015
Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015
Leveranciersintegratie in TOPdesk - TOPdesk on Tour 2015
 
House Plans
House PlansHouse Plans
House Plans
 
NOW! ELMO case study: IT solution for the EV charging network of Estonia fro...
NOW! ELMO case study:  IT solution for the EV charging network of Estonia fro...NOW! ELMO case study:  IT solution for the EV charging network of Estonia fro...
NOW! ELMO case study: IT solution for the EV charging network of Estonia fro...
 
Puccini
PucciniPuccini
Puccini
 
INTERPERSONAL COMMUNICATION by Azfar Javed
INTERPERSONAL COMMUNICATION by Azfar JavedINTERPERSONAL COMMUNICATION by Azfar Javed
INTERPERSONAL COMMUNICATION by Azfar Javed
 
La responsabilidad
La responsabilidadLa responsabilidad
La responsabilidad
 
Perry Timms- The Future Charity Worker
Perry Timms- The Future Charity WorkerPerry Timms- The Future Charity Worker
Perry Timms- The Future Charity Worker
 
XP Day 2013 Experience report
XP Day 2013 Experience report XP Day 2013 Experience report
XP Day 2013 Experience report
 
Unit 51 page layout & design task 2
Unit 51 page layout & design task 2Unit 51 page layout & design task 2
Unit 51 page layout & design task 2
 
Marketing presentation
Marketing presentationMarketing presentation
Marketing presentation
 
Вконтакте::Форматы и сегменты
Вконтакте::Форматы и сегменты Вконтакте::Форматы и сегменты
Вконтакте::Форматы и сегменты
 

Semelhante a Hints Complex System Performance Optimization

Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...Alexandru Ersenie
 
SharePoint Performance Optimization In 10 Steps for the IT Professional
SharePoint Performance Optimization In 10 Steps for the IT ProfessionalSharePoint Performance Optimization In 10 Steps for the IT Professional
SharePoint Performance Optimization In 10 Steps for the IT ProfessionalJoel Oleson
 
Production debugging web applications
Production debugging web applicationsProduction debugging web applications
Production debugging web applicationsIdo Flatow
 
8 application servers_v2
8 application servers_v28 application servers_v2
8 application servers_v2ashish61_scs
 
IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...
IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...
IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...Daniel Martin
 
Boosting the Performance of your Rails Apps
Boosting the Performance of your Rails AppsBoosting the Performance of your Rails Apps
Boosting the Performance of your Rails AppsMatt Kuklinski
 
Performance Optimization in Large Systems - Cusec 2019
Performance Optimization in Large Systems - Cusec 2019Performance Optimization in Large Systems - Cusec 2019
Performance Optimization in Large Systems - Cusec 2019Pierre-Luc Maheu
 
Grab: Building a Healthy Elasticsearch Ecosystem
Grab: Building a Healthy Elasticsearch EcosystemGrab: Building a Healthy Elasticsearch Ecosystem
Grab: Building a Healthy Elasticsearch EcosystemElasticsearch
 
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!Teamstudio
 
Application Performance Lecture
Application Performance LectureApplication Performance Lecture
Application Performance LectureVishwanath Ramdas
 
ConFoo 2017: Introduction to performance optimization of .NET web apps
ConFoo 2017: Introduction to performance optimization of .NET web appsConFoo 2017: Introduction to performance optimization of .NET web apps
ConFoo 2017: Introduction to performance optimization of .NET web appsPierre-Luc Maheu
 
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorksPerformance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorksThoughtworks
 
Camunda BPM 7.2: Performance and Scalability (English)
Camunda BPM 7.2: Performance and Scalability (English)Camunda BPM 7.2: Performance and Scalability (English)
Camunda BPM 7.2: Performance and Scalability (English)camunda services GmbH
 
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Joel Oleson
 
Getting Started with Amazon Redshift
Getting Started with Amazon RedshiftGetting Started with Amazon Redshift
Getting Started with Amazon RedshiftAmazon Web Services
 
Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics HeroTechWell
 
VMworld 2013: Performance Management of Business Critical Applications using ...
VMworld 2013: Performance Management of Business Critical Applications using ...VMworld 2013: Performance Management of Business Critical Applications using ...
VMworld 2013: Performance Management of Business Critical Applications using ...VMworld
 

Semelhante a Hints Complex System Performance Optimization (20)

Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
 
SharePoint Performance Optimization In 10 Steps for the IT Professional
SharePoint Performance Optimization In 10 Steps for the IT ProfessionalSharePoint Performance Optimization In 10 Steps for the IT Professional
SharePoint Performance Optimization In 10 Steps for the IT Professional
 
Production debugging web applications
Production debugging web applicationsProduction debugging web applications
Production debugging web applications
 
8 application servers_v2
8 application servers_v28 application servers_v2
8 application servers_v2
 
IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...
IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...
IBM Insight 2013 - Aetna's production experience using IBM DB2 Analytics Acce...
 
Boosting the Performance of your Rails Apps
Boosting the Performance of your Rails AppsBoosting the Performance of your Rails Apps
Boosting the Performance of your Rails Apps
 
Performance Optimization in Large Systems - Cusec 2019
Performance Optimization in Large Systems - Cusec 2019Performance Optimization in Large Systems - Cusec 2019
Performance Optimization in Large Systems - Cusec 2019
 
Grab: Building a Healthy Elasticsearch Ecosystem
Grab: Building a Healthy Elasticsearch EcosystemGrab: Building a Healthy Elasticsearch Ecosystem
Grab: Building a Healthy Elasticsearch Ecosystem
 
Sql Server
Sql ServerSql Server
Sql Server
 
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
 
Application Performance Lecture
Application Performance LectureApplication Performance Lecture
Application Performance Lecture
 
ConFoo 2017: Introduction to performance optimization of .NET web apps
ConFoo 2017: Introduction to performance optimization of .NET web appsConFoo 2017: Introduction to performance optimization of .NET web apps
ConFoo 2017: Introduction to performance optimization of .NET web apps
 
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorksPerformance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
 
Client server
Client serverClient server
Client server
 
Camunda BPM 7.2: Performance and Scalability (English)
Camunda BPM 7.2: Performance and Scalability (English)Camunda BPM 7.2: Performance and Scalability (English)
Camunda BPM 7.2: Performance and Scalability (English)
 
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
Spring 2007 SharePoint Connections Oleson Advanced Administration and Plannin...
 
Getting Started with Amazon Redshift
Getting Started with Amazon RedshiftGetting Started with Amazon Redshift
Getting Started with Amazon Redshift
 
Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics Hero
 
VMworld 2013: Performance Management of Business Critical Applications using ...
VMworld 2013: Performance Management of Business Critical Applications using ...VMworld 2013: Performance Management of Business Critical Applications using ...
VMworld 2013: Performance Management of Business Critical Applications using ...
 
ADF Performance Monitor
ADF Performance MonitorADF Performance Monitor
ADF Performance Monitor
 

Mais de DevConFu

Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...
Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...
Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...DevConFu
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...DevConFu
 
Gojko Adzic - Taking the business on the journey - ConFu
Gojko Adzic - Taking the business on the journey - ConFuGojko Adzic - Taking the business on the journey - ConFu
Gojko Adzic - Taking the business on the journey - ConFuDevConFu
 
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFuVasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFuDevConFu
 
Hanno Jarvet - VSM, Planning and Problem Solving - ConFu
Hanno Jarvet - VSM, Planning and Problem Solving - ConFuHanno Jarvet - VSM, Planning and Problem Solving - ConFu
Hanno Jarvet - VSM, Planning and Problem Solving - ConFuDevConFu
 
Andrey Adamovich - Enterprise flight into DevOps space - ConFu
Andrey Adamovich - Enterprise flight into DevOps space - ConFuAndrey Adamovich - Enterprise flight into DevOps space - ConFu
Andrey Adamovich - Enterprise flight into DevOps space - ConFuDevConFu
 
Jina Bolton - in the search of the single source of truth
Jina Bolton - in the search of the single source of truth Jina Bolton - in the search of the single source of truth
Jina Bolton - in the search of the single source of truth DevConFu
 
Jina bolton - Refactoring Web Interfaces
Jina bolton - Refactoring Web InterfacesJina bolton - Refactoring Web Interfaces
Jina bolton - Refactoring Web InterfacesDevConFu
 
Hanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem Solving
Hanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem SolvingHanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem Solving
Hanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem SolvingDevConFu
 
Didzis Balodis - Web application security – war stories from real penetration...
Didzis Balodis - Web application security – war stories from real penetration...Didzis Balodis - Web application security – war stories from real penetration...
Didzis Balodis - Web application security – war stories from real penetration...DevConFu
 
Ivan Gaydamakin and Juri Tishko - ​3D Printing (workshop)
Ivan Gaydamakin and Juri Tishko -  ​3D Printing (workshop)Ivan Gaydamakin and Juri Tishko -  ​3D Printing (workshop)
Ivan Gaydamakin and Juri Tishko - ​3D Printing (workshop)DevConFu
 
Robin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3D
Robin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3DRobin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3D
Robin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3DDevConFu
 
Marion de Groot - Scrum and Specs
Marion de Groot - Scrum and SpecsMarion de Groot - Scrum and Specs
Marion de Groot - Scrum and SpecsDevConFu
 
Allan Kelly - Dialogue Sheets for retrospectives and discussion
Allan Kelly - Dialogue Sheets for retrospectives and discussionAllan Kelly - Dialogue Sheets for retrospectives and discussion
Allan Kelly - Dialogue Sheets for retrospectives and discussionDevConFu
 
Robert Virkus - Playing with LEGO Mindstorms from your Mobile Phone
Robert Virkus - Playing with LEGO Mindstorms from your Mobile PhoneRobert Virkus - Playing with LEGO Mindstorms from your Mobile Phone
Robert Virkus - Playing with LEGO Mindstorms from your Mobile PhoneDevConFu
 
Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture DevConFu
 
Misha Beshkin - How to organize execution of tests on real Android devices
Misha Beshkin - How to organize execution of tests on real Android devicesMisha Beshkin - How to organize execution of tests on real Android devices
Misha Beshkin - How to organize execution of tests on real Android devicesDevConFu
 
Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost DevConFu
 
Andrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloud
Andrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloudAndrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloud
Andrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloudDevConFu
 
Patrick H. Lauke - Getting Touchy; an introduction to touch and pointer events
Patrick H. Lauke - Getting Touchy; an introduction to touch and pointer eventsPatrick H. Lauke - Getting Touchy; an introduction to touch and pointer events
Patrick H. Lauke - Getting Touchy; an introduction to touch and pointer eventsDevConFu
 

Mais de DevConFu (20)

Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...
Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...
Hanno Jarvet - Agile is a bad strategy or 5 things every Agile practitioner s...
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
 
Gojko Adzic - Taking the business on the journey - ConFu
Gojko Adzic - Taking the business on the journey - ConFuGojko Adzic - Taking the business on the journey - ConFu
Gojko Adzic - Taking the business on the journey - ConFu
 
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFuVasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
Vasco Duarte - Agile Innovation - Product Management in turbulent times - ConFu
 
Hanno Jarvet - VSM, Planning and Problem Solving - ConFu
Hanno Jarvet - VSM, Planning and Problem Solving - ConFuHanno Jarvet - VSM, Planning and Problem Solving - ConFu
Hanno Jarvet - VSM, Planning and Problem Solving - ConFu
 
Andrey Adamovich - Enterprise flight into DevOps space - ConFu
Andrey Adamovich - Enterprise flight into DevOps space - ConFuAndrey Adamovich - Enterprise flight into DevOps space - ConFu
Andrey Adamovich - Enterprise flight into DevOps space - ConFu
 
Jina Bolton - in the search of the single source of truth
Jina Bolton - in the search of the single source of truth Jina Bolton - in the search of the single source of truth
Jina Bolton - in the search of the single source of truth
 
Jina bolton - Refactoring Web Interfaces
Jina bolton - Refactoring Web InterfacesJina bolton - Refactoring Web Interfaces
Jina bolton - Refactoring Web Interfaces
 
Hanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem Solving
Hanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem SolvingHanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem Solving
Hanno Jarvet - The Lean Toolkit – Value Stream Mapping and Problem Solving
 
Didzis Balodis - Web application security – war stories from real penetration...
Didzis Balodis - Web application security – war stories from real penetration...Didzis Balodis - Web application security – war stories from real penetration...
Didzis Balodis - Web application security – war stories from real penetration...
 
Ivan Gaydamakin and Juri Tishko - ​3D Printing (workshop)
Ivan Gaydamakin and Juri Tishko -  ​3D Printing (workshop)Ivan Gaydamakin and Juri Tishko -  ​3D Printing (workshop)
Ivan Gaydamakin and Juri Tishko - ​3D Printing (workshop)
 
Robin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3D
Robin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3DRobin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3D
Robin Hawkes - Using OpenStreetMap and WebGL to create real-world cities in 3D
 
Marion de Groot - Scrum and Specs
Marion de Groot - Scrum and SpecsMarion de Groot - Scrum and Specs
Marion de Groot - Scrum and Specs
 
Allan Kelly - Dialogue Sheets for retrospectives and discussion
Allan Kelly - Dialogue Sheets for retrospectives and discussionAllan Kelly - Dialogue Sheets for retrospectives and discussion
Allan Kelly - Dialogue Sheets for retrospectives and discussion
 
Robert Virkus - Playing with LEGO Mindstorms from your Mobile Phone
Robert Virkus - Playing with LEGO Mindstorms from your Mobile PhoneRobert Virkus - Playing with LEGO Mindstorms from your Mobile Phone
Robert Virkus - Playing with LEGO Mindstorms from your Mobile Phone
 
Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture Eduards Sizovs - Micro Service Architecture
Eduards Sizovs - Micro Service Architecture
 
Misha Beshkin - How to organize execution of tests on real Android devices
Misha Beshkin - How to organize execution of tests on real Android devicesMisha Beshkin - How to organize execution of tests on real Android devices
Misha Beshkin - How to organize execution of tests on real Android devices
 
Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost
 
Andrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloud
Andrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloudAndrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloud
Andrey Adamovich and Luciano Fiandesio - Groovy dev ops in the cloud
 
Patrick H. Lauke - Getting Touchy; an introduction to touch and pointer events
Patrick H. Lauke - Getting Touchy; an introduction to touch and pointer eventsPatrick H. Lauke - Getting Touchy; an introduction to touch and pointer events
Patrick H. Lauke - Getting Touchy; an introduction to touch and pointer events
 

Último

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 

Último (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 

Hints Complex System Performance Optimization

  • 2. Hints on complex system performance optimization Ainars Galvans Exigen Services Latvia December 2, 2013 www.ExigenServices.com
  • 3. System Performance Introduction: context, terms and basics 3 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 4. Terminology 4 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 5. Performance is: Requirement Number of users Hardware spec. “Response time” Measurement Throughput CPU utilization Response time i.e. time user wait for page to load in the browser 5 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 6. A simple 3-tier Web Application Client App. DB Prepare request Response time User Experience Parse, process Select or update More Logic Select or update Render HTML Render UI Repeated 6 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 7. A simple 3-tier Web Application App. Client1 7 DB Client2 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 8. With 3rd party WebServices Client1 App. DB Client2 8 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 9. Other Apps share the same DB? App. 9 DB CONFIDENTIAL – NOT FOR DISTRIBUTION Other (Corp.) App. www.ExigenServices.com
  • 10. Performance is: Requirement Number of users Hardware spec. “Response time” 10 Measurement Throughput CPU utilization Response time CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 11. Rules of thumb  Response time – >2 seconds: is it all CPU time? – 0.5-2.0 seconds: why? – <0.5 seconds : OK  Concurrent users – The term is misleading – What matters technically is throughput  Resource utilization: – DB CPU should be below 50% 11 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 12. My issue localization techniques  First step: where (what host) is the bottleneck? – Single user repeat the same action (i.e. with Selenium) – Monitor “CPU time” delta (secs.), not CPU (%) – Use excel to understand how it scales  If it’s the App Server: analyze HTML – FireFox “Save Page As” -> complete page – Look for large, unused data  If it’s DB or Web Services: analyze traffic, logs – Put milliseconds to log files, see what takes most of it – Look for repeated requests for single page rendering  If it’s client (browser): profile JavaScript – IE -> Dev. Tools (F12) -> Profiler – Are all the JavaScripts cached (or compiled each time)? 12 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 13. System Performance Performance optimization stories 13 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 14. Locating database call issues App. Client1 14 DB Client2 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 15. Story #1: Just a few tables  Problem description – Web Page shows a number of tables – Page response time is a bit above 2 seconds – Under load DB becomes overloaded quickly – All DB queries takes <0.1 sec  Investigation results: – Single page load cause about 100 select executions – Each took 0.02 secs – There were two distinct statements  Solution – After adjusting DB caching – Response times reduced to 0.4 – Almost no load to DB under load 15 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 16. Locating WebService call issues Client1 App. DB Client2 16 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 17. Story #2: One call only takes 0.5 secs.  Problem description – Web Page shows user’s data overview – Typical customer page response time 5 seconds – Response time up to 30 seconds for specific customers – Under load response times don’t increase too much  Investigation results: – Data in tables is requested via web services – Separate call made on each business item – Call response time is 0.5 secs  Solution – Protocol adjusted to request all info with one call – Response times reduced to 0.9 17 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 18. Application Logic (HTML processing) App. Client1 18 DB Client2 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 19. Story #3: Tables, again: .NET  Problem description: – Page shows main page and a dynamic table with hot links – Response times >5 secs. – App server loaded significantly – Under load response times increase  Investigation – In page source (HTML) I’ve discovered huge callbackstate  Solution – http://www.devexpress.com/Support/Center/Question/Details/Q42 5597 [Browsable(false)] – Response times < 3secs. now 19 public string UnboundLargeData { get; set; } CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 20. Client Side (rare case though) App. Client1 20 DB Client2 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 21. Story #4: Client side  Problem – Visually page loads 8-12 seconds and vary – Looks like response time depend on client workstation  Investigation – Server response time is only 3 seconds – It takes browser 1-2 seconds to send request – It takes browser 3-4 seconds to render response – It takes more if workstation CPU is slow (<3 GHz)  Solution – Optimize JavaScript and remove features from page – Browser choice recommendation – Unfortunately: optimal client CPU recommendation 21 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 22. … everything. The business itself App. Client1 22 DB Client2 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 23. Story #5. The reports and queries  Production problem – Special feature “accounting reports” usually work 1-2 mins – Sometimes 10 times as much – Suspected reason a “morning lag” (all users)  Investigation – One report loads DB CPU to 100% for 1-2 minutes – Only technical solution: rewrite whole app, changing DB structure and logic  The actual solution – Nightly batch jobs on demand – The default nightly batch jobs – Daily execution only with special privileges and only one at a time 23 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 24. Conclusions Localizing the problem 24 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 25. My issue localization techniques  First step: where (what host) is the bottleneck? – Single user repeat the same action (i.e. with Selenium) – Monitor “CPU time” delta (secs.), not CPU (%) – Use excel to understand how it scales  If it’s the App Server: analyze HTML – FireFox “Save Page As” -> complete page – Look for large, unused data  If it’s DB or Web Services: analyze traffic, logs – Put milliseconds to log files, see what takes most of it – Look for repeated requests for single page rendering  If it’s client (browser): profile JavaScript – IE -> Dev. Tools (F12) -> Profiler – Are all the JavaScripts cached (or compiled each time)? 25 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com
  • 26. Happy to share more details Skype name: ainarsgalvans Phone: +371 29432698 Facebook: Ainars Galvans Email: Ainars.Galvans@gmail.com Blog: find me at SoftwareTestingClub.com 26 CONFIDENTIAL – NOT FOR DISTRIBUTION www.ExigenServices.com

Notas do Editor

  1. OribkiZatoplenieZatorTransport