SlideShare a Scribd company logo
1 of 27
dynaTrace
Browser Performace Analysis
By
Yasmine M. Gaber
13-06-2013
Agenda

What is dynaTrace ?

Why should you use dynaTrace ?

dynaTrace Capabilities

Key Performance Indicators (KPI’s)

Instant Test

dynaTrace AJAX Edition

Best Practices to improve performance
What is dynaTrace ?

Offers the most advanced deep-dive web
performance diagnostics into JavaScript execution,
DOM access, rendering activities and network traffic
for analyzing and troubleshooting web applications.

Quickly trace and profile web apps to understand
performance characteristics.

Identify hotspots and isolate performance problems.

Works with browsers: Internet Explorer (6 – 10) and
Firefox (3.6 – 20) on Windows (XP, 7 , 8).
Why should you use dynaTrace ?

Find What's Causing Web
Performance Issues

Investigate Potential Web
Performance Improvements

Build More Interactive Web Apps Faster

Understand Exactly What Is Happening in the
Browser
dynaTrace Capabilities

Cross-Browser Diagnostics

Code-Level Visibility Into Frameworks

Speed Up Page Load Times

Optimize Page Rendering

Compare Website To Peers

Deep Javascript And Dom Tracing

Share Data With Your Peers
Key Performance Indicators (KPI’s)

Tell you how fast or slow your web site is to
the end user.

Driven by efforts from web performance
specialists such as Steve Souders and
companies like Google and Yahoo!

Divided into:
a) KPI’s on Load Time
b) KPI’s on Resources
c) KPI’s on Network Connections
KPI’s on Load Time

Time to First Impression

Time to onLoad Event

Time to Fully Loaded
KPI’s on Load Time
KPI’s on Resources

Total Number of Requests

Total Number of HTTP 300s/400s/500s

Total Size of Web Site

Total Size of Images/CSS/JS

Total Number of XHR Requests
KPI’s on Resources
KPI’s on Network Connections

DNS Time

Connect Time

Server Time

Transfer Time

Wait Time

Number of Domains / Single Resource
Domains
KPI’s on Network Connections
Rank Calculations

Time to First Impression: great if < 1s, acceptable if
< 2.5s, slow if > 2.5s

Time to onLoad: great if < 2s, acceptable if < 4s,
slow if > 4s

Time to Fully Loaded: great if < 2s, acceptable if <
5s, slow if > 5s

Number of total HTTP Requests: great sites if < 40
requests, acceptable sites if < 100 requests, bad sites
if > 100 requests

Browser Caching, Network Resources,
JavaScript/AJAX and Server-Side Activities.
Instant Test
http://www.gomez.com/website-performance-test
Instant Test
http://www.gomez.com/website-performance-test
Instant Test
http://www.gomez.com/website-performance-test
Instant Test
http://www.gomez.com/website-performance-test
dynaTrace AJAX Edition
Best Practices to improve
performance

Best Practices on Browser Caching

Best Practices on Network Requests and
Round-trips

Best Practices on JavaScript and AJAX
Performance

Best Practices on Server-Side Performance
Optimization
Best Practices on Browser Caching

HTTP Caching Headers
− Expires Headers
− Cache-Control using max-age setting in seconds

Rank Calculations
− Page scores a 100 if there are fewer than 5
resources with missing cache settings or a setting in
the past.
− Calculate the ratio of cached and short-cached
resources to the overall number of resources on that
page
− Penalize objects with NO cache settings or an expires
date in the past by multiplying the ratio with 1.5
Best Practices on Network
Requests and Round-trips

Avoid Redirects, HTTP 400s and HTTP 500s

Optimize:
− Images (CSS Sprites and Compacting)
− Style Sheets (Merge CSS Files)
− JavaScript (Merge and Minimize JavaScript Files)

Rank Calculations
− Page scores a 100 if there are no redirects, 400s or 500s
and no images, css and js files that could be merged.
− Allows up to 1 css, 6 images and 2 js file from the same
domain
− Penalize rank by 1 for each extra file
Best Practices on JavaScript and
AJAX Performance

Blocking and long running script tags
− Delay Loading JavaScript Files
− Optimizing JavaScript Execution

Slow CSS Selectors with jQuery/Prototype
− Use Unique ID when possible (95% faster than using
class name)
− Specify a Tag name if you have to use the Class
Name
− Specify a parent context
− Cache Lookup Results
− Reduce the DOM Size
Best Practices on JavaScript and
AJAX Performance

Optimize XHR calls when applicable

Manipulating the DOM

Rank Calculations
− Allow 2 JavaScript files. Penalize the Rank for
every additional file
− Sum the overall execution time of blocks that
execute longer than 20ms. Every 50ms reduces
the Page Rank by 1 point
− Penalize the page for more than 5 XHR calls
Best Practices on Server-Side
Performance Optimization

Server requests:
− First request on the page
− Requests that return HTML
− Requests that send GET or POST parameters
− All XHR/AJAX Requests

Rank Calculations
− Allow up to 6 Server-Side requests. Every additional
request is penalized by 1 rank
− For each request, penalize rank by

1 if server time from 200ms to 400ms

2 if server time between 400ms and 1000s

4 if server time longer than 1s.
Questions ?
Resources

http://www.compuware.com/en_us/application-
performance-management/products/user-
experience-management/real-user-monitoring-
web-and-mobile/capabilities.html

https://apmcommunity.compuware.com/comm
unity/display/AJAX/dynaTrace+AJAX+Edition+
Community+Home
Thank You !
Twitter: @yasmine_mohamed
Email: yasmine.gaber@gmail.com

More Related Content

What's hot

RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...
RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...
RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...InfluxData
 
[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3
[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3
[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3Ji-Woong Choi
 
Oracle BI Multi-user Development: MDS XML versus MUDE
Oracle BI Multi-user Development: MDS XML versus MUDEOracle BI Multi-user Development: MDS XML versus MUDE
Oracle BI Multi-user Development: MDS XML versus MUDEStewart Bryson
 
DBA Fundamentals Group: Continuous SQL with Kafka and Flink
DBA Fundamentals Group: Continuous SQL with Kafka and FlinkDBA Fundamentals Group: Continuous SQL with Kafka and Flink
DBA Fundamentals Group: Continuous SQL with Kafka and FlinkTimothy Spann
 
Parallel Selenium Test With Docker
Parallel Selenium Test With DockerParallel Selenium Test With Docker
Parallel Selenium Test With DockerLINE Corporation
 
Design Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIsDesign Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIsStormpath
 
Sonar Tool - JAVA code analysis
Sonar Tool - JAVA code analysisSonar Tool - JAVA code analysis
Sonar Tool - JAVA code analysisPrashant Gupta
 
Sonarqube
SonarqubeSonarqube
SonarqubeKalkey
 
The Cyber Attack Lifecycle
The Cyber Attack LifecycleThe Cyber Attack Lifecycle
The Cyber Attack LifecycleCybereason
 
Testing with Spring: An Introduction
Testing with Spring: An IntroductionTesting with Spring: An Introduction
Testing with Spring: An IntroductionSam Brannen
 
XSS and CSRF with HTML5
XSS and CSRF with HTML5XSS and CSRF with HTML5
XSS and CSRF with HTML5Shreeraj Shah
 
An Introduction to Maven
An Introduction to MavenAn Introduction to Maven
An Introduction to MavenVadym Lotar
 
OAuth2 and Spring Security
OAuth2 and Spring SecurityOAuth2 and Spring Security
OAuth2 and Spring SecurityOrest Ivasiv
 
Maven 3 Overview
Maven 3  OverviewMaven 3  Overview
Maven 3 OverviewMike Ensor
 
LOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDS
LOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDSLOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDS
LOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDSAGSanePLDTCompany
 
Hands On with Maven
Hands On with MavenHands On with Maven
Hands On with MavenSid Anand
 
Troubleshooting Kerberos in Hadoop: Taming the Beast
Troubleshooting Kerberos in Hadoop: Taming the BeastTroubleshooting Kerberos in Hadoop: Taming the Beast
Troubleshooting Kerberos in Hadoop: Taming the BeastDataWorks Summit
 
API Security Best Practices and Guidelines
API Security Best Practices and GuidelinesAPI Security Best Practices and Guidelines
API Security Best Practices and GuidelinesWSO2
 

What's hot (20)

RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...
RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...
RESTful API – How to Consume, Extract, Store and Visualize Data with InfluxDB...
 
Http request smuggling
Http request smugglingHttp request smuggling
Http request smuggling
 
[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3
[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3
[오픈소스컨설팅] 아파치톰캣 운영가이드 v1.3
 
Oracle BI Multi-user Development: MDS XML versus MUDE
Oracle BI Multi-user Development: MDS XML versus MUDEOracle BI Multi-user Development: MDS XML versus MUDE
Oracle BI Multi-user Development: MDS XML versus MUDE
 
Next.js - ReactPlayIO.pptx
Next.js - ReactPlayIO.pptxNext.js - ReactPlayIO.pptx
Next.js - ReactPlayIO.pptx
 
DBA Fundamentals Group: Continuous SQL with Kafka and Flink
DBA Fundamentals Group: Continuous SQL with Kafka and FlinkDBA Fundamentals Group: Continuous SQL with Kafka and Flink
DBA Fundamentals Group: Continuous SQL with Kafka and Flink
 
Parallel Selenium Test With Docker
Parallel Selenium Test With DockerParallel Selenium Test With Docker
Parallel Selenium Test With Docker
 
Design Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIsDesign Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIs
 
Sonar Tool - JAVA code analysis
Sonar Tool - JAVA code analysisSonar Tool - JAVA code analysis
Sonar Tool - JAVA code analysis
 
Sonarqube
SonarqubeSonarqube
Sonarqube
 
The Cyber Attack Lifecycle
The Cyber Attack LifecycleThe Cyber Attack Lifecycle
The Cyber Attack Lifecycle
 
Testing with Spring: An Introduction
Testing with Spring: An IntroductionTesting with Spring: An Introduction
Testing with Spring: An Introduction
 
XSS and CSRF with HTML5
XSS and CSRF with HTML5XSS and CSRF with HTML5
XSS and CSRF with HTML5
 
An Introduction to Maven
An Introduction to MavenAn Introduction to Maven
An Introduction to Maven
 
OAuth2 and Spring Security
OAuth2 and Spring SecurityOAuth2 and Spring Security
OAuth2 and Spring Security
 
Maven 3 Overview
Maven 3  OverviewMaven 3  Overview
Maven 3 Overview
 
LOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDS
LOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDSLOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDS
LOG4J VULNERABILITY SAP BUSINESS ONE IMPACT AND WORK AROUNDS
 
Hands On with Maven
Hands On with MavenHands On with Maven
Hands On with Maven
 
Troubleshooting Kerberos in Hadoop: Taming the Beast
Troubleshooting Kerberos in Hadoop: Taming the BeastTroubleshooting Kerberos in Hadoop: Taming the Beast
Troubleshooting Kerberos in Hadoop: Taming the Beast
 
API Security Best Practices and Guidelines
API Security Best Practices and GuidelinesAPI Security Best Practices and Guidelines
API Security Best Practices and Guidelines
 

Viewers also liked

Using dynaTrace to optimise application performance
Using dynaTrace to optimise application performanceUsing dynaTrace to optimise application performance
Using dynaTrace to optimise application performanceRichard Bishop
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentDynatrace
 
Dyna Trace Whitepaper Performance
Dyna Trace Whitepaper PerformanceDyna Trace Whitepaper Performance
Dyna Trace Whitepaper Performancegopi1985
 
Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015
Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015
Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015Andreas Grabner
 
Practical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringPractical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringDynatrace
 
AWS and Dynatrace: Moving your Cloud Strategy to the Next Level
AWS and Dynatrace: Moving your Cloud Strategy to the Next LevelAWS and Dynatrace: Moving your Cloud Strategy to the Next Level
AWS and Dynatrace: Moving your Cloud Strategy to the Next LevelDynatrace
 
Top Lessons Learned While Researching and Writing The DevOps Handbook
Top Lessons Learned While Researching and Writing The DevOps HandbookTop Lessons Learned While Researching and Writing The DevOps Handbook
Top Lessons Learned While Researching and Writing The DevOps HandbookDynatrace
 
Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Dynatrace
 
2016 Holiday Retail Tech Recap
2016 Holiday Retail Tech Recap2016 Holiday Retail Tech Recap
2016 Holiday Retail Tech RecapDynatrace
 
Ask the Expert – Best Practices for a High Performing Site
Ask the Expert – Best Practices for a High Performing SiteAsk the Expert – Best Practices for a High Performing Site
Ask the Expert – Best Practices for a High Performing SiteDynatrace
 
Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Ravi Okade
 
25 Famous Websites using Wordpress
25 Famous Websites using Wordpress25 Famous Websites using Wordpress
25 Famous Websites using WordpressMike Taylor
 
Unravelling Mobile Web Performance
Unravelling Mobile Web PerformanceUnravelling Mobile Web Performance
Unravelling Mobile Web PerformanceGuy Podjarny
 
Nginx performance monitoring with Dynatrace
Nginx performance monitoring with DynatraceNginx performance monitoring with Dynatrace
Nginx performance monitoring with DynatraceHarald Zeitlhofer
 
Nagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers Do
Nagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers DoNagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers Do
Nagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers DoNagios
 
OTechs Network Monitoring (Nagios) Training Course
OTechs Network Monitoring (Nagios) Training CourseOTechs Network Monitoring (Nagios) Training Course
OTechs Network Monitoring (Nagios) Training CourseOsman Suliman
 
5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FAST5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FASTDynatrace
 

Viewers also liked (20)

Using dynaTrace to optimise application performance
Using dynaTrace to optimise application performanceUsing dynaTrace to optimise application performance
Using dynaTrace to optimise application performance
 
Dynatrace
DynatraceDynatrace
Dynatrace
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
 
Dyna Trace Whitepaper Performance
Dyna Trace Whitepaper PerformanceDyna Trace Whitepaper Performance
Dyna Trace Whitepaper Performance
 
PerfUG : présentation de Dynatrace APM
PerfUG : présentation de Dynatrace APMPerfUG : présentation de Dynatrace APM
PerfUG : présentation de Dynatrace APM
 
dynaTrace APM
dynaTrace APMdynaTrace APM
dynaTrace APM
 
Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015
Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015
Top .NET, Java & Web Performance Mistakes - Meetup Jan 2015
 
Practical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringPractical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User Monitoring
 
AWS and Dynatrace: Moving your Cloud Strategy to the Next Level
AWS and Dynatrace: Moving your Cloud Strategy to the Next LevelAWS and Dynatrace: Moving your Cloud Strategy to the Next Level
AWS and Dynatrace: Moving your Cloud Strategy to the Next Level
 
Top Lessons Learned While Researching and Writing The DevOps Handbook
Top Lessons Learned While Researching and Writing The DevOps HandbookTop Lessons Learned While Researching and Writing The DevOps Handbook
Top Lessons Learned While Researching and Writing The DevOps Handbook
 
Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]
 
2016 Holiday Retail Tech Recap
2016 Holiday Retail Tech Recap2016 Holiday Retail Tech Recap
2016 Holiday Retail Tech Recap
 
Ask the Expert – Best Practices for a High Performing Site
Ask the Expert – Best Practices for a High Performing SiteAsk the Expert – Best Practices for a High Performing Site
Ask the Expert – Best Practices for a High Performing Site
 
Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)
 
25 Famous Websites using Wordpress
25 Famous Websites using Wordpress25 Famous Websites using Wordpress
25 Famous Websites using Wordpress
 
Unravelling Mobile Web Performance
Unravelling Mobile Web PerformanceUnravelling Mobile Web Performance
Unravelling Mobile Web Performance
 
Nginx performance monitoring with Dynatrace
Nginx performance monitoring with DynatraceNginx performance monitoring with Dynatrace
Nginx performance monitoring with Dynatrace
 
Nagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers Do
Nagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers DoNagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers Do
Nagios Conference 2011 - David Thomas - Know Its Broke Before Your Customers Do
 
OTechs Network Monitoring (Nagios) Training Course
OTechs Network Monitoring (Nagios) Training CourseOTechs Network Monitoring (Nagios) Training Course
OTechs Network Monitoring (Nagios) Training Course
 
5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FAST5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FAST
 

Similar to Dyna trace

Dyna trace ajax edition介绍
Dyna trace ajax edition介绍Dyna trace ajax edition介绍
Dyna trace ajax edition介绍louieuser
 
Shopzilla - Performance By Design
Shopzilla - Performance By DesignShopzilla - Performance By Design
Shopzilla - Performance By DesignTim Morrow
 
Performance anti patterns in ajax applications
Performance anti patterns in ajax applicationsPerformance anti patterns in ajax applications
Performance anti patterns in ajax applicationsSergeyChernyshev
 
TSSJS2010 Presenatation on: Performance Anti Patterns In Ajax Applications
TSSJS2010 Presenatation on: Performance Anti Patterns In Ajax ApplicationsTSSJS2010 Presenatation on: Performance Anti Patterns In Ajax Applications
TSSJS2010 Presenatation on: Performance Anti Patterns In Ajax Applicationsguestc75cdc
 
JS Fest 2019/Autumn. Александр Товмач. JAMstack
JS Fest 2019/Autumn. Александр Товмач. JAMstackJS Fest 2019/Autumn. Александр Товмач. JAMstack
JS Fest 2019/Autumn. Александр Товмач. JAMstackJSFestUA
 
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...John McCaffrey
 
Windy cityrails performance_tuning
Windy cityrails performance_tuningWindy cityrails performance_tuning
Windy cityrails performance_tuningJohn McCaffrey
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for ScalabilityTuenti
 
Ajax For Scalability
Ajax For ScalabilityAjax For Scalability
Ajax For Scalabilityerikschultink
 
Make Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedMake Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedAndy Kucharski
 
CTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowCTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowSpiffy
 
Configuring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web PerormanceConfiguring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web PerormanceSpark::red
 
Make Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedMake Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedPromet Source
 
Tips for a Faster Website
Tips for a Faster WebsiteTips for a Faster Website
Tips for a Faster WebsiteRayed Alrashed
 
Open-source website performance tools
Open-source website performance toolsOpen-source website performance tools
Open-source website performance toolsArtur Cistov
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuningJohn McCaffrey
 

Similar to Dyna trace (20)

Dyna trace ajax edition介绍
Dyna trace ajax edition介绍Dyna trace ajax edition介绍
Dyna trace ajax edition介绍
 
Shopzilla - Performance By Design
Shopzilla - Performance By DesignShopzilla - Performance By Design
Shopzilla - Performance By Design
 
Performance anti patterns in ajax applications
Performance anti patterns in ajax applicationsPerformance anti patterns in ajax applications
Performance anti patterns in ajax applications
 
TSSJS2010 Presenatation on: Performance Anti Patterns In Ajax Applications
TSSJS2010 Presenatation on: Performance Anti Patterns In Ajax ApplicationsTSSJS2010 Presenatation on: Performance Anti Patterns In Ajax Applications
TSSJS2010 Presenatation on: Performance Anti Patterns In Ajax Applications
 
JS Fest 2019/Autumn. Александр Товмач. JAMstack
JS Fest 2019/Autumn. Александр Товмач. JAMstackJS Fest 2019/Autumn. Александр Товмач. JAMstack
JS Fest 2019/Autumn. Александр Товмач. JAMstack
 
Making the web faster
Making the web fasterMaking the web faster
Making the web faster
 
Web Performance Optimization (WPO)
Web Performance Optimization (WPO)Web Performance Optimization (WPO)
Web Performance Optimization (WPO)
 
Modelling Web Performance Optimization - FFSUx
Modelling  Web Performance Optimization - FFSUxModelling  Web Performance Optimization - FFSUx
Modelling Web Performance Optimization - FFSUx
 
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
 
Windy cityrails performance_tuning
Windy cityrails performance_tuningWindy cityrails performance_tuning
Windy cityrails performance_tuning
 
performance.ppt
performance.pptperformance.ppt
performance.ppt
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for Scalability
 
Ajax For Scalability
Ajax For ScalabilityAjax For Scalability
Ajax For Scalability
 
Make Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedMake Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speed
 
CTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowCTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should Know
 
Configuring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web PerormanceConfiguring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web Perormance
 
Make Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedMake Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speed
 
Tips for a Faster Website
Tips for a Faster WebsiteTips for a Faster Website
Tips for a Faster Website
 
Open-source website performance tools
Open-source website performance toolsOpen-source website performance tools
Open-source website performance tools
 
Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuning
 

More from Yasmine Gaber (8)

Capistrano
CapistranoCapistrano
Capistrano
 
Ionic
IonicIonic
Ionic
 
Mahout part2
Mahout part2Mahout part2
Mahout part2
 
Mahout part1
Mahout part1Mahout part1
Mahout part1
 
Ibn Sina
Ibn SinaIbn Sina
Ibn Sina
 
Home Bowling
Home BowlingHome Bowling
Home Bowling
 
Oauth2.0
Oauth2.0Oauth2.0
Oauth2.0
 
Why_do i_hate_shopping
Why_do i_hate_shoppingWhy_do i_hate_shopping
Why_do i_hate_shopping
 

Recently uploaded

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 

Recently uploaded (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 

Dyna trace

  • 2. Agenda  What is dynaTrace ?  Why should you use dynaTrace ?  dynaTrace Capabilities  Key Performance Indicators (KPI’s)  Instant Test  dynaTrace AJAX Edition  Best Practices to improve performance
  • 3. What is dynaTrace ?  Offers the most advanced deep-dive web performance diagnostics into JavaScript execution, DOM access, rendering activities and network traffic for analyzing and troubleshooting web applications.  Quickly trace and profile web apps to understand performance characteristics.  Identify hotspots and isolate performance problems.  Works with browsers: Internet Explorer (6 – 10) and Firefox (3.6 – 20) on Windows (XP, 7 , 8).
  • 4. Why should you use dynaTrace ?  Find What's Causing Web Performance Issues  Investigate Potential Web Performance Improvements  Build More Interactive Web Apps Faster  Understand Exactly What Is Happening in the Browser
  • 5. dynaTrace Capabilities  Cross-Browser Diagnostics  Code-Level Visibility Into Frameworks  Speed Up Page Load Times  Optimize Page Rendering  Compare Website To Peers  Deep Javascript And Dom Tracing  Share Data With Your Peers
  • 6. Key Performance Indicators (KPI’s)  Tell you how fast or slow your web site is to the end user.  Driven by efforts from web performance specialists such as Steve Souders and companies like Google and Yahoo!  Divided into: a) KPI’s on Load Time b) KPI’s on Resources c) KPI’s on Network Connections
  • 7. KPI’s on Load Time  Time to First Impression  Time to onLoad Event  Time to Fully Loaded
  • 9. KPI’s on Resources  Total Number of Requests  Total Number of HTTP 300s/400s/500s  Total Size of Web Site  Total Size of Images/CSS/JS  Total Number of XHR Requests
  • 11. KPI’s on Network Connections  DNS Time  Connect Time  Server Time  Transfer Time  Wait Time  Number of Domains / Single Resource Domains
  • 12. KPI’s on Network Connections
  • 13. Rank Calculations  Time to First Impression: great if < 1s, acceptable if < 2.5s, slow if > 2.5s  Time to onLoad: great if < 2s, acceptable if < 4s, slow if > 4s  Time to Fully Loaded: great if < 2s, acceptable if < 5s, slow if > 5s  Number of total HTTP Requests: great sites if < 40 requests, acceptable sites if < 100 requests, bad sites if > 100 requests  Browser Caching, Network Resources, JavaScript/AJAX and Server-Side Activities.
  • 19. Best Practices to improve performance  Best Practices on Browser Caching  Best Practices on Network Requests and Round-trips  Best Practices on JavaScript and AJAX Performance  Best Practices on Server-Side Performance Optimization
  • 20. Best Practices on Browser Caching  HTTP Caching Headers − Expires Headers − Cache-Control using max-age setting in seconds  Rank Calculations − Page scores a 100 if there are fewer than 5 resources with missing cache settings or a setting in the past. − Calculate the ratio of cached and short-cached resources to the overall number of resources on that page − Penalize objects with NO cache settings or an expires date in the past by multiplying the ratio with 1.5
  • 21. Best Practices on Network Requests and Round-trips  Avoid Redirects, HTTP 400s and HTTP 500s  Optimize: − Images (CSS Sprites and Compacting) − Style Sheets (Merge CSS Files) − JavaScript (Merge and Minimize JavaScript Files)  Rank Calculations − Page scores a 100 if there are no redirects, 400s or 500s and no images, css and js files that could be merged. − Allows up to 1 css, 6 images and 2 js file from the same domain − Penalize rank by 1 for each extra file
  • 22. Best Practices on JavaScript and AJAX Performance  Blocking and long running script tags − Delay Loading JavaScript Files − Optimizing JavaScript Execution  Slow CSS Selectors with jQuery/Prototype − Use Unique ID when possible (95% faster than using class name) − Specify a Tag name if you have to use the Class Name − Specify a parent context − Cache Lookup Results − Reduce the DOM Size
  • 23. Best Practices on JavaScript and AJAX Performance  Optimize XHR calls when applicable  Manipulating the DOM  Rank Calculations − Allow 2 JavaScript files. Penalize the Rank for every additional file − Sum the overall execution time of blocks that execute longer than 20ms. Every 50ms reduces the Page Rank by 1 point − Penalize the page for more than 5 XHR calls
  • 24. Best Practices on Server-Side Performance Optimization  Server requests: − First request on the page − Requests that return HTML − Requests that send GET or POST parameters − All XHR/AJAX Requests  Rank Calculations − Allow up to 6 Server-Side requests. Every additional request is penalized by 1 rank − For each request, penalize rank by  1 if server time from 200ms to 400ms  2 if server time between 400ms and 1000s  4 if server time longer than 1s.
  • 27. Thank You ! Twitter: @yasmine_mohamed Email: yasmine.gaber@gmail.com